是否可以检查表格的名称是否在附近?

时间:2012-03-23 09:06:56

标签: vba excel-vba excel

我想知道是否可以检查特定纸张的可用性。如果它存在,它将继续使用其余代码。如果不是,那么它将添加到工作表中。

我已经想到了它,但却给了我错误。如果你知道什么,请分享一些信息!谢谢!

sub macro1()
If sheets("Test") = False Then
Sheets.Add.Name = "Test"
End If
'Run my code
End Sub

2 个答案:

答案 0 :(得分:3)

喜欢这个吗?

Sub Sample()
    Dim ws As Worksheet

    On Error Resume Next
    Set ws = Sheets("Test")
    On Error GoTo 0

    If ws Is Nothing Then
        Set ws = Sheets.Add
        ws.Name = "Test"
    End If

    '~~> Run your code
End Sub

答案 1 :(得分:1)

另一种方法......创建一个功能 - 接受工作簿对象和您之后的工作表名称 - 如果在工作簿中找到工作表,则返回tru

Function SheetExists(oWorkbook As Workbook, sSheetname As String)

    Dim oWs As Worksheet
    For Each oWs In oWorkbook.Worksheets
        If oWs.Name = sSheetname Then
            SheetExists = True
            Exit Function
        End If
    Next

End Function

Sub TestSheetExists()
    If SheetExists(ActiveWorkbook, "Bob") Then
        MsgBox "Found it"
    Else
        MsgBox "No joy"
    End If
End Sub