在vba中经常要访问工作表,访问工作表一般使用如下的代码
Set oWK = oWB.Worksheets(sWkName)
但是当指定名称的工作表不存在时,以上代码将返回错误。
由于此类需求经常遇到,为此写了个自定义函数,用于判断任意工作簿中是否存在指定名称的工作表,代码如下:
Function WorkSheetExists(oWB As Workbook, ByVal sWkName As String) As Boolean
'判断指定名称的工作表是否存在
'QQ1722187970
'oWB为具体的工作簿,sWkName为工作表的名称,结果返回True表示存在
On Error Resume Next
Dim oWK As Worksheet
Set oWK = oWB.Worksheets(sWkName)
'如果出错表示不存在指定名称的工作表
If Err.Number <> 0 Then
WorkSheetExists = False
Else
WorkSheetExists = True
End If
Err.Clear
End Function


发表评论