Tabelle anlegen

Bild

Betrifft: Tabelle anlegen
von: Nick
Geschrieben am: 06.10.2003 11:50:43

Hi,

hab folgendes Problem und zwar möchte ich in einer Arbeitsmappe mit einer Schleife die Tabellennamen überprüfen. Und wenn die Tabelle mit dem aktuellen Monatsname nicht vorhanden ist soll diese erstellt werden doch er gib immer folgende Fehlermeldun: "Laufzeitfehler '1004' Die Methode 'Add' für das Objekt 'Sheets' ist fehlgeschlagen. Hoffe es kann mir einer weiter helfen.


Sub Tabellenprüfen()
Dim i As Integer
Dim d As Integer
d = Month(Date)
For i = 1 To ThisWorkbook.Worksheets.Count
    If Worksheets(i).Name = MonthName(d) Then
        Worksheets(i).Activate
    Else
        Worksheets.Add
        ActiveSheet.Name = MonthName(d)
    End If
Next i
End Sub



Schon einmal in Voraus Danke

Gruß
Nick
Bild


Betrifft: AW: Tabelle anlegen
von: RainerW
Geschrieben am: 06.10.2003 12:12:09

Hallo Nick,

es darf keine zwei Tabellen mit demselben Namen geben, deshalb:


Sub Tabellenprüfen()
Dim i As Integer
Dim d As Integer
d = Month(Date)
For i = 1 To ThisWorkbook.Worksheets.Count
    If Worksheets(i).Name = MonthName(d) Then
        Worksheets(i).Activate
    Else
        Worksheets.Add
        ActiveSheet.Name = MonthName(d)
        Exit For  ' das war's
    End If
Next i
End Sub


Gruß
Rainer


Bild


Betrifft: Danke
von: Nick
Geschrieben am: 06.10.2003 12:16:33

Hi RainerW,

vielen Dank funktioniert prima

Gruß
Nick


Bild


Betrifft: AW: Tabelle anlegen
von: Galenzo
Geschrieben am: 06.10.2003 12:17:24

Hallo,
hier mein Vorschlag - ein Tabellenblatt mit dem Namen das Aktuellen Monats wird erzeugt und anschließend aktiviert. Sollte bei der Erzeugung ein Fehler auftreten, dann heißt dies, daß es schon ein Tabellenblatt mit gleichem namen gibt - in diesem Falle wird die Erzeugung übersprungen und dieses (schon vorhandene) Tabellenblatt aktiviert.


Private Sub MonatsblattNeu()
Dim str As String
    str = Format(Date, "mmm")
    Worksheets.Add after:=Worksheets(Worksheets.Count)
    On Error Resume Next
    ActiveSheet.Name = str
    Worksheets(str).Select
End Sub


Viel Erfolg und Gutes Gelingen!


 Bild

Beiträge aus den Excel-Beispielen zum Thema " Tabelle anlegen"