[英]check if a hidden worksheet exists
我阅读了很多有关如何查找现有工作表的主题,因为我需要它作为工作簿。
在执行所有搜索后,我实现了以下代码:
'check if woksheet "tool" exists
On Error Resume Next
If Not Len(Worksheets("tool").Name) Then
ThisWorkbook.Worksheets.Add(after:=Worksheets("Data"))
ActiveSheet.Name = "tool"
Else
Worksheets("tool").Activate
End If
On Error GoTo 0
只要“工具”工作表是可见的,代码就可以很好地运行,而隐藏时则不再可用,因为我需要它。
到目前为止,我还没有找到满意的答案
类似于以下内容,使用@Rory的技术来测试表是否存在:
Option Explicit
Public Sub test()
If Not Evaluate("ISREF('" & "tool" & "'!A1)") Then
ThisWorkbook.Worksheets.Add after:=Worksheets("Data")
ActiveSheet.Name = "tool"
Else
'Worksheets("tool").Visible = True '<== Also make visible? Optional
Worksheets("tool").Activate
End If
End Sub
'To check if a worksheet exists
Public Function worksheetExists(ByVal wb As Workbook, ByVal sheetNameStr As String) As Boolean
On Error Resume Next
worksheetExists = (wb.Worksheets(sheetNameStr).Name <> "")
Err.Clear: On Error GoTo 0
End Function
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.