我有一个输入表“Sheet I”,输入单元格:C3,输入值将是整数,例如1,2,3 ......。 输出表格为“Out 1”,“Out 2”,“Out 3”,......“Out 10”。某些输出表包含A2到G36的内容,而其他输出表包含A2到H36或T36的信息。理想情况下,我希望看到列(从C列开始)有条件地基于表I中$ C $ 3中的值。这是逻辑:
现在我有了这个VBA,但是这段代码中的输入值是静态数字。任何人都可以建议我如何更改代码以使其工作?
Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
Dim ShArray
Dim i
Dim MyRange, c As Range
Application.ScreenUpdating = False
Application.EnableEvents = False
ShArray = Array("Out 1", "Out 2", "Out 3", "Out 4", "Out 5",.. "Out 10")
For i = LBound(ShArray) To UBound(ShArray)
Set MyRange = Sheets(ShArray(i)).Range("A:T")
For Each c In MyRange
Sheets(ShArray(i)).Rows(c.Column).Hidden = c.Value = "??"
Next c
Next i
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
答案 0 :(得分:0)
不确定这是否是您要找的,但您应该尝试一下。
If InputValue = 1 then
Sheets(ShArray(i)).Columns("A:C").EntireColumn.Hidden = false
elseif InputValue = 2 then
'...
elseif InputValue = 3 then
End if