我正在尝试在一个代码下创建隐藏和取消隐藏功能。但我的代码不起作用。
我只是想要如果行被隐藏则取消隐藏。如果行未被隐藏则隐藏它们。
任何帮助将不胜感激
Sub HideRows()
Dim cell As Range
For Each cell In Sheets("Current Assets").Range("Table110[Qty.]")
If cell.Value = 0 Then
cell.EntireRow.Hidden = True
ElseIf cell.EntireRow.Hidden = True Then
cell.EntireRow.Hidden = False
End If
Next
End Sub
答案1
我认为你的逻辑是错误的——你有
- 如果值为零,则隐藏该行
- 否则(即如果值不为零),如果该行被隐藏,则显示它。
这是否能满足您的更多要求:
Sub HideRows()
Dim cell As Range
For Each cell In Sheets("Current Assets").Range("Table110[Qty.]")
If cell.Value = 0 Then
cell.EntireRow.Hidden = Not cell.EntireRow.Hidden
End If
Next
End Sub