我正在 Excel 中构建一份调查问卷,并被要求在每页上添加“您位于 Y 中的 X 工作表”类型的指示符。
可见表格的数量根据一些早期问题的答案而变化(隐藏不相关的问题集等),因此该语句中的分子和分母都是变量。
我在每个页面上都有一个标签(Label1),我可以在其中写入标题,我已经成功地计算了可见工作表的总数并将标题写入与工作表激活事件联系起来:
Private Sub Worksheet_Activate()
If Range("AZ1").Value = "1" Then
Dim v
For Each s In ActiveWorkbook.Sheets
If s.Visible Then v = v + 1
Next s
ActiveSheet.Label1.Caption = "Currently viewing page X of " & v & vbCrLf
End If
End Sub
这会正确地将分母写入每张纸上的每个标签中。
为了找到分子,我需要能够找到事件工作表左侧未隐藏工作表的数量。
有谁知道我如何使用 VBA 来做到这一点?
最佳答案
Worksheet.Index
-属性可以帮助您:
Dim n As Long
Dim i As Long
n = 0
For i = 1 To ActiveSheet.Index
If ThisWorkbook.Worksheets(i).Visible Then
n = n + 1
End If
Next
Debug.Print n
关于vba - 使用VBA计算事件工作表(excel)左侧未隐藏(可见)工作表的数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16503268/