abfrage tabellennamen schon vorhanden

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: abfrage tabellennamen schon vorhanden von: roland_k
Geschrieben am: 07.04.2005 18:06:05

hi zusammen
bin immer noch am tabellen anlegen per makro --mit dem code:


Private Sub CommandButton1_Click() 'tabellen anlegen
Dim i As Integer
For i = 1 To 15    
    Sheets("vorlage").Select
    Sheets("vorlage").Copy After:=Sheets(1)
    Sheets("vorlage (2)").Select
    Sheets("vorlage (2)").Name = ("" & i)
    Next i
End Sub

es werde eben 15 tabellen aus der vorlage erzeugt mit den namen 1 2 3..bis 15
wenn nun beim anlegen der tabellen bereits eine vorhanden ist soll er diese ueberspringen und die andern noch fehlenden anlegen
zb tabelle("4") und tabelle("5")existieren schon dann sollten die andern fehlenenden 1-3 und 6-15 angelegt werden
irgendwie muss das mit for each ...gehn (in array einlesen?)
sorry das bekomme nicht gebacken
danke wenn sich jemand bemüht mir den code ergänzen
gruss roland_k
Bild


Betrifft: AW: abfrage tabellennamen schon vorhanden von: ANdreas
Geschrieben am: 07.04.2005 18:16:02

Hallo Roland,

versuchs mal so:


Private Sub CommandButton1_Click() 'tabellen anlegen
Dim i%
Dim arrSheets(14) As Boolean
Dim ws As Worksheet
' Check for existing worksheets
For Each ws In Worksheets
    Select Case ws.Name
        Case 1 To 15: arrSheets(CInt(ws.Name) - 1) = True
    End Select
Next ws
For i = 1 To 15
    If arrSheets(i - 1) = False Then
        Sheets("vorlage").Copy After:=Sheets(i)
        Sheets("vorlage (2)").Name = (i)
    End If
Next i
End Sub


Gruß
Andreas


Bild


Betrifft: funkt nicht :-(( von: roland_k
Geschrieben am: 08.04.2005 01:34:06

hi andreas
der code funkt nicht
obwohl tabellen vorhanden sind will der neue anlegen

habe da zwar rumprobiert aber finde den fehler nicht :-((

schaut sich das bitte nochmal jemand an

danke im voraus
gruss roland_k


Bild


Betrifft: AW: funkt doch :-)) von: WernerB.
Geschrieben am: 08.04.2005 07:44:03

Hallo Roland,

wie gefällt Dir das?

Private Sub CommandButton1_Click() 'tabellen anlegen
Dim BlaNa As String, _
    i As Integer, j As Integer, _
    vorh As Boolean
    Application.ScreenUpdating = False
    For i = 1 To 15
      BlaNa = CStr(i)
      vorh = False
      For j = 1 To Sheets.Count
        If Sheets(j).Name = BlaNa Then
          vorh = True
          Exit For
        End If
      Next j
      If vorh = False Then
        Sheets("vorlage").Copy After:=Sheets(1)
        Sheets(2).Name = CStr(i)
      End If
    Next i
    Application.ScreenUpdating = True
End Sub

Viel Erfolg wünscht
WernerB.

P.S.: Dieses Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter !


Bild


Betrifft: AW: funkt nicht :-(( von: ANdreas
Geschrieben am: 08.04.2005 09:39:40

Hallo Roland,

hier nochmal mein leicht geänderte Vorschlag:

Private Sub CommandButton1_Click() 'tabellen anlegen
Dim i%, s$
Dim arrSheets(14) As Boolean
Dim ws As Worksheet
' Check for existing worksheets
For Each ws In Worksheets
    s = ws.Name
    If IsNumeric(s) Then
        Select Case CInt(s)
            Case 1 To 15: arrSheets(CInt(s) - 1) = True
        End Select
    End If
Next ws
For i = 1 To 15
    If arrSheets(i - 1) = False Then
        Sheets("vorlage").Copy After:=Sheets(i)
        Sheets("vorlage (2)").Name = (i)
    End If
Next i
End Sub


Gruß
Andreas


 Bild

Beiträge aus den Excel-Beispielen zum Thema "abfrage tabellennamen schon vorhanden"