Excel VBA:图表的动态 x 轴取决于输入

Excel VBA: Dynamic x-axis of diagram depending on input

提问人:2mas 提问时间:10/10/2023 更新时间:10/10/2023 访问量:46

问:

任务:用户输入两个日期,这些日期使间隔。图表必须仅显示时间间隔。y 轴的值是通过用户未使用的工作表上的表格计算的。我的想法是使用日期输入让 vba 有选择地隐藏列

该表基本上是硬编码的,并根据用户选择的时间间隔填充数字。 间隔的 X1 是开始日期。现在,粗体代码是尝试使用 r1c1 表示法将结束日期用作相应列的输入,其中宏开始隐藏间隔不需要的数字。我得到的错误是“运行时错误 13 - 类型不兼容”。

我的问题出在哪里?我声明日期很长,watch 函数显示 enddate2 计算正确。但有些人我认为我的synatx是错误的

Sub LWA_Erzeugen()


    Dim startDate As Date
    Dim endDate As Date
    Dim endDateNumber As Long
    Dim endDateNumber2 As Long
    
    ' Prompt the user to enter the start dat
    startDate = InputBox("Start-Datum eingeben (mm.dd.yyyy):")
    Range("I2").Value = startDate


    ' Prompt the user to enter the end date
    endDate = InputBox("End-Datum eingeben (mm.dd.yyyy):")
    Range("J2").Value = endDate
    

    ' Check if the entered values are valid dates
    If IsDate(startDate) And IsDate(endDate) Then
    
    Unhide_Contiguous_Columns
        'ThisWorkbook.Sheets("B2 PV Production").Columns.EntireColumn.Hidden = False 'unhide all columns
    
        endDateNumber = (ThisWorkbook.Sheets("B1 PV Application").Range("K2").Value)  ' why 3: start to count after column b
        endDateNumber2 = endDateNumber + 3
        ThisWorkbook.Sheets("B2 PV Production").FormulaR1C1.Columns("R1C& endDateNumber2 & :R1C320").EntireColumn.Hidden = True 'hidden columns are not shown in diagrams
              
       
    End If


End Sub
Sub Unhide_Contiguous_Columns()

    Worksheets("B2 PV Production").Range("B:HT").EntireColumn.Hidden = False

End Sub



Excel VBA

评论

0赞 SJR 10/10/2023
FormulaR1C1是设置或返回公式的范围的属性。它没有属性。Columns
0赞 2mas 10/10/2023
我在没有“FormulaR1C1”的情况下尝试过,但后来出现了类型不匹配错误。似乎我声明了错误的东西,或者必须在某个地方更改类型,但我无法让它工作
0赞 SJR 10/10/2023
您正在尝试隐藏 to 320 的一些列?endDateNumber2
1赞 FaneDuru 10/10/2023
如果我正确理解/推断出您尝试做什么,请尝试使用。它将从列(包括)开始,您需要隐藏多少列(320 列)......ThisWorkbook.Sheets("B2 PV Production").columns(endDateNumber2).resize(, 320).EntireColumn.Hidden = TrueendDateNumber2
0赞 Rachel Hettinger 10/10/2023
仅供参考 以下是有关如何使用行列 (R1C1) 表示法的一些信息。

答: 暂无答案