我是编码初学者,特别是 VBA 初学者。我有一个 Excel 文档,其中隐藏了几行。我需要取消隐藏行 34:37、42:45、50:53、58:61,一次四行一组,直到它们全部取消隐藏。我有一个由形状制成的按钮。
目前,我将
currentStage
函数应用于代码,但它适得其反,因为我不希望代码隐藏行,只取消隐藏。
这是现在的代码:
Sub UnhideObjectives()
Static currentStage As Integer
With ActiveSheet
.Rows("34:37").EntireRow.Hidden = False
.Rows("42:45").EntireRow.Hidden = (currentStage < 1)
.Rows("50:53").EntireRow.Hidden = (currentStage < 2)
End With
currentStage = (currentStage + 1) Mod 3
End Sub
谢谢你。
在一次操作中取消隐藏所有行:
Sub UnhideObjectives()
ActiveSheet.range("A34:A37,A42:A45,A50:A53").EntireRow.Hidden = False
End Sub
编辑:好的我明白你的意思
Sub UnhideObjectives()
Dim rng As Range
For Each rng In ActiveSheet.Range("A34:A37,A42:A45,A50:A53").Areas
If rng.EntireRow.Hidden Then 'is this block hidden?
rng.EntireRow.Hidden = False 'unhide
Exit For '...and stop looping
End If
Next rng
End Sub