Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Excel-VBA: Prüfung ob Tabelle vorhanden





Frage

Mahlzeit miteinander! Ich hab folgendes Problem: Grob: Ich will prüfen, ob ein Tabellen-Blatt vorhanden ist. Fein: In der Tabelle1:Spalte A stehen Namen. Ich gehe nun Zeile für Zeile durch und will prüfen, ob ein Sheet vorhanden ist, dass genauso heißt wie der Name in Tabelle1:A2 z.B. Kurz und gut, mir fehlt die Syntax: Ich denke an sowas wie [code] if not exists(Sheets(Zellwert)) then Sheets.Add Sheets("Tabelle2").Name = Zellwert end if Sheets(Zellwert).Select mach irgendwas [/code] Ich hoffe, ihr wißt was ich meine und könnt mir auch am Sonntag helfen! Danke erstmal Gruß cmkatz

Antwort 1 von cmkatz

Hi nochmal,

habs mittlerweile selbst herausgefunden:


Dim tblDa As Boolean
Dim wks As Worksheet
Dim tblInd As Integer
Dim tblNew As String

For Each wks In ActiveWorkbook.Worksheets
            If wks.Name = Zellwert Then
                 tblDa = True
                 Exit For
            Else
                 tblDa = False
            End If
Next

If tblDa Then
            Sheets(Zellwert).Select
            Range("A1").Select
Else
            Sheets.Add
            tblNew = "Tabelle" & tblInd
            tblInd = tblInd + 1
            Sheets(tblNew).Select
            Sheets(tblNew).Name = Zellwert
            Sheets(Zellwert).Select
            Range("A1").Select
End If

mach irgendwas



Trotzdem danke an alle, die darüber nachgedacht haben! :-)

Gruß
cmkatz

Antwort 2 von cmkatz

nochmal...

man kann´s natürlich noch verkürzen:


If tblDa = false Then 
Sheets.Add 
tblNew = "Tabelle" & tblInd 
tblInd = tblInd + 1 
Sheets(tblNew).Select 
Sheets(tblNew).Name = Zellwert 
End If 

Sheets(Zellwert).Select 
Range("A1").Select 
mach irgendwas 



Antwort 3 von Event

Hallo

Vielleicht gehts so:

Private Sub CommandButton1_Click()
Dim wsName$, intIndex%, Colcount&
Range("A65535").End(xlUp).Select
Colcount = Right(Selection.Address(False, False),_ Len(Selection.Address(False, False)) - 1)
For intIndex = 2 To Colcount
wsName = Cells(intIndex, 1).Value
On Error Resume Next
ActiveWorkbook.Worksheets.Add.name = wsName
Next
End Sub


Gruß