Freigeben über


Erstellen oder Ersetzen eines Arbeitsblatts

In den folgenden Beispielen wird gezeigt, wie ermittelt wird, ob ein Arbeitsblatt vorhanden ist, und wie dann das Arbeitsblatt erstellt oder ersetzt wird.

Beispielcode bereitgestellt von: Tom Urtis, Atlas Programming Management

Ermitteln, ob ein Arbeitsblatt vorhanden ist

In diesem Beispiel wird gezeigt, wie Mithilfe der Name-Eigenschaft des Worksheet-Objekts ermittelt wird, ob ein Arbeitsblatt mit dem Namen "Sheet4" vorhanden ist. Der Name des Arbeitsblatts wird von der mySheetName-Variablen angegeben.

Sub TestSheetYesNo()
    Dim mySheetName As String, mySheetNameTest As String
    mySheetName = "Sheet4"
    
    On Error Resume Next
    mySheetNameTest = Worksheets(mySheetName).Name
    If Err.Number = 0 Then
        MsgBox "The sheet named ''" & mySheetName & "'' DOES exist in this workbook."
    Else
        Err.Clear
        MsgBox "The sheet named ''" & mySheetName & "'' does NOT exist in this workbook."
    End If
End Sub

Erstellen des Arbeitsblatts

In diesem Beispiel wird gezeigt, wie Sie ermitteln, ob ein Arbeitsblatt mit dem Namen "Sheet4" vorhanden ist. Der Name des Arbeitsblatts wird von der mySheetName-Variablen angegeben. Wenn das Arbeitsblatt nicht vorhanden ist, zeigt dieses Beispiel, wie ein Arbeitsblatt mit dem Namen "Sheet4" mithilfe der Add-Methode des Worksheets-Objekts erstellt wird.

Sub TestSheetCreate()
    Dim mySheetName As String, mySheetNameTest As String
    mySheetName = "Sheet4"
    
    On Error Resume Next
    mySheetNameTest = Worksheets(mySheetName).Name
    If Err.Number = 0 Then
        MsgBox "The sheet named ''" & mySheetName & "'' DOES exist in this workbook."
    Else
        Err.Clear
        Worksheets.Add.Name = mySheetName
        MsgBox "The sheet named ''" & mySheetName & "'' did not exist in this workbook but it has been created now."
    End If
End Sub

Ersetzen des Arbeitsblatts

In diesem Beispiel wird gezeigt, wie Sie ermitteln, ob ein Arbeitsblatt mit dem Namen "Sheet4" vorhanden ist. Der Name des Arbeitsblatts wird von der mySheetName-Variablen angegeben. Wenn das Arbeitsblatt vorhanden ist, wird in diesem Beispiel gezeigt, wie das vorhandene Arbeitsblatt mithilfe der Delete-Methode des Worksheet-Objekts gelöscht und dann ein neues Arbeitsblatt mit dem Namen "Sheet4" erstellt wird.

Wichtig Alle Daten auf dem ursprünglichen Arbeitsblatt mit dem Namen "Sheet4" werden gelöscht, wenn das Arbeitsblatt gelöscht wird.

Sub TestSheetReplace()
    Dim mySheetName As String
    mySheetName = "Sheet4"
    
    Application.DisplayAlerts = False
    On Error Resume Next
    Worksheets(mySheetName).Delete
    Err.Clear
    Application.DisplayAlerts = True
    Worksheets.Add.Name = mySheetName
    MsgBox "The sheet named ''" & mySheetName & "'' has been replaced."
End Sub

Über den Autor

MVP Tom Urtis ist Gründer von Atlas Programming Management, einem im Silicon Valley ansässigen Full-Service-Unternehmen, das Microsoft Office- und Excel-Unternehmenslösungen entwickelt. Tom Urtis hat mehr als 25 Jahre Erfahrung in Unternehmensführung und der Entwicklung von Microsoft Office-Anwendungen und ist Mitautor von „Holy Macros! It's 2,500 Excel VBA Examples“.

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.