我被分配到Excel& amp;宏,我不太了解那些。 任务是自动隐藏下一列(如果上一列总计为0,则刷新或按F2),如果其总数>> 0则自动取消,然后自动取消隐藏(不刷新或按F2)。
假设我有一组列&行(比如说C11到C20),我必须输入值(比如说0或> = 0),一旦我到达最后一个单元格(比如C20),它具有特定列的总和公式(C11到C20),如果总计是0然后下一列(比如说D)应该在没有按任何键的情况下得到隐藏,如果总数>> 0,则列D应该是原样。
请帮帮我。
以下是隐藏列的代码。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$C$31" Then
If Target <= 0 Then
Range("D31").EntireColumn.Hidden = True
Else
Range("D31").EntireColumn.Hidden = False
End If
End If
If Target.Address = "$D$31" Then
If Target <= 0 Then
Range("E31").EntireColumn.Hidden = True
Else
Range("E31").EntireColumn.Hidden = False
End If
End If
If Target.Address = "$E$31" Then
If Target <= 0 Then
Range("F31").EntireColumn.Hidden = True
Else
Range("F31").EntireColumn.Hidden = False
End If
End If
End Sub
答案 0 :(得分:1)
这是我在google搜索这个漫长的搜索后找到的解决方案。我现在只使用1列。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rCell As Range
For Each rCell In Range("C11:C31")
If Range("C31").Value = "0" Then
Range("D31").EntireColumn.Hidden = True
Else
If Range("C31").Value <> "0" Then
Range("D31").EntireColumn.Hidden = False
End If
End If
Next rCell
End Sub