2.3k Aufrufe
in Tabellenkalkulation von
Hallo!

ich sitze mal wieder an einer (für mich) kniffligen Sache:

Wie kann ich prüfen, ob ein Tabellenblatt mit bestimmten Titel schon existiert? Wenn das nicht der Fall ist, soll das Tabellenblatt nämlich erstellt werden und der Titel vergeben werden.

Ich hab mich und das Excel-Aufzeichnungs-Tool schon bemüht, und das ist dabei herausgekommen:


If Not Sheets("Titel") Then Application.Run "Tabelle.xls!erstellen"


und


Sub erstellen()
Sheets.Add After:=Sheets(Sheets.Count)
Sheets("Tabelle1").Name = "Titel"
End Sub


Ich bekomme so aber immer folgende Meldung:

"Laufzeitfehler '9':

Index außerhalb des gültigen Bereichs".

Könnt ihr mir vielleicht helfen?
Ich finde den blöden Fehler einfach nicht.

Vielen Dank schon mal im Voraus.

MfG mcscool88

4 Antworten

0 Punkte
von beverly Experte (3.5k Punkte)
Hi,

hier eine prinzipielle Möglichkeit:
Sub Vorhanden()
Dim wsTabelle As Worksheet
On Error Resume Next
Set wsTabelle = Worksheets("Tabelle2")
On Error GoTo 0
If wsTabelle Is Nothing Then
MsgBox "Nicht vorhanden"
End If
End Sub

Bis später,
Karin
0 Punkte
von hajo_zi Experte (9.1k Punkte)
Hallo Unbekannter,

feststellen, ob Worksheet vorhanden ist
hier ein Beispiel, welches Du relativ einfach entsprechend abändern kannst:
Sub TabAuswahl()
Dim Sh As Worksheet
Dim sName$
sName = InputBox("Bitte Tabellenname eingeben!")
For Each Sh In Worksheets
If InStr(Sh.Name, sName) > 0 Then
Sh.Select
Exit Sub
End If
Next Sh
Beep
MsgBox "Kein Blatt gefunden!"
End Sub

Gruß Hajo
0 Punkte
von nighty Experte (6.6k Punkte)
hi all ^^

oder so

gruss nighty

Sub DeinMakro()
If SheetExists("" & DeineVariable) = True Then
Rem ja
Else
Rem nein
End If
End Sub

Public Function SheetExists(strName As String) As Boolean
On Error Resume Next
SheetExists = Not Worksheets(strName) Is Nothing
End Function
0 Punkte
von
Hallo nochmal

es funktioniert!

Vielen lieben Dank für eure Hilfe!

Frohe Weihnachten und einen guten Rutsch ins neue Jahr wünscht,

mcscool88

Deine Antwort

Dein angezeigter Name (optional):
Datenschutz: Deine Email-Adresse benutzen wir ausschließlich, um dir Benachrichtigungen zu schicken. Es gilt unsere Datenschutzerklärung.
Anti-Spam-Captcha:
Bitte logge dich ein oder melde dich neu an, um das Anti-Spam-Captcha zu vermeiden.
...