Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Tabellenblatt mit VBA umbenennen

Tabellenblatt mit VBA umbenennen
26.06.2006 13:17:08
Joe
Hallo zusammen,
ich habe mal wieder ein VBA Problem.
Wie kann ich ein Tabellenblatt umbenennen welches beim Importtieren aus einem anderen Programm in Excel immer einen dynamischen Namen hat?
D.h. Durchs importieren heißt das Tabellenblatt z.B. „dgl5“ beim nächten Import (einen Tag später) heißt der Import des Tabellenblatts dann „dgl6“ u.s.w.
Ich benötige den VBA-Code um aus einem immer dynamischen Tabellenblatt (es kommt in jedem Excel-File immer nur ein Tabellenblatt vor) den Namen „Ping“ zu machen.
Kann mir da jemand helfen?
Danke
Joe
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tabellenblatt mit VBA umbenennen
26.06.2006 13:21:53
Uta
sheets("dgl5").activate
activesheet.name="MyName"
MfG Uta
AW: Tabellenblatt mit VBA umbenennen
26.06.2006 13:33:02
Joe
Hi Uta,
Danke ja aber das Problem ist je genau der dynamische Name des Tabellenblatts
Es heißt ja nicht immer "dgl5" der VBA Code müsste sich auf das einzige Tabellenblatt das es gibt beziehen und dieses in z.B."Ping" umbenennen.
Ich weiß nicht wie ich es anders Formulieren soll.
Danke
Joe
Anzeige
AW: Tabellenblatt mit VBA umbenennen
26.06.2006 13:36:03
OttoH
Hallo Joe,
mach mal folgendes im Makro: ActiveWorkbook.Sheets(1).Name = "abc"
Gruß OttoH
AW: Tabellenblatt mit VBA umbenennen
26.06.2006 13:39:07
OttoH
...oder auch folgendes:
Workbooks("Umsatz Januar").Sheets(1).Name = "Ping"
Gruß OttoH
AW: Tabellenblatt mit VBA umbenennen
26.06.2006 13:53:33
Joe
Cool Otto,
vielen Danke hat 100% gefunzt mit dem ersten Tipp.
Schönen Tag noch.
Anzeige
warum dann noch offen?
26.06.2006 14:05:30
Schließer
AW: Tabellenblatt mit VBA umbenennen
26.06.2006 13:43:13
UweD
Hallo
so z.B.

Sub dgl()
Dim i
On Error GoTo Fehler
For i = 1 To Worksheets.Count
If Left(Worksheets(i).Name, 3) = "dgl" Then
Worksheets(i).Name = "Ping"
Exit Sub
End If
Next
Fehler:
If Err.Number <> 0 Then MsgBox "Fehler: " & Err.Number & vbLf & Err.Description
End Sub

Gruß UweD
(Rückmeldung wäre schön)
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Tabellenblatt mit VBA umbenennen


Schritt-für-Schritt-Anleitung

Um ein Tabellenblatt in Excel mit VBA umbenennen zu können, gehe folgendermaßen vor:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.

  2. Klicke auf Einfügen > Modul, um ein neues Modul zu erstellen.

  3. Füge den folgenden Code in das Modul ein:

    Sub TabellenblattUmbenennen()
       On Error Resume Next
       ActiveWorkbook.Sheets(1).Name = "Ping"
       On Error GoTo 0
    End Sub
  4. Schließe den VBA-Editor und kehre zu Excel zurück.

  5. Führe das Makro aus, indem du auf Entwicklertools > Makros, wähle TabellenblattUmbenennen und klicke auf Ausführen.

Mit diesem Code wird das erste Tabellenblatt in deiner Arbeitsmappe in "Ping" umbenannt.


Häufige Fehler und Lösungen

  • Fehler: "Der Name ist ungültig."

    • Lösung: Stelle sicher, dass der neue Name für das Tabellenblatt nicht bereits vorhanden ist und keine ungültigen Zeichen enthält.
  • Fehler: "Das Blatt kann nicht umbenannt werden."

    • Lösung: Überprüfe, ob das Arbeitsblatt geschützt ist. Du musst den Schutz aufheben, um es umbenennen zu können.

Alternative Methoden

  1. Mit einer Schleife: Wenn du sicherstellen möchtest, dass das richtige Tabellenblatt umbenannt wird, kannst du eine Schleife verwenden:

    Sub DGLUmbenennen()
       Dim ws As Worksheet
       For Each ws In ThisWorkbook.Worksheets
           If Left(ws.Name, 3) = "dgl" Then
               ws.Name = "Ping"
               Exit For
           End If
       Next ws
    End Sub
  2. Excel Makro: Du kannst auch eine Benutzeroberfläche zur Auswahl des Tabellenblatts erstellen und dann den Namen ändern.


Praktische Beispiele

  • Beispiel zur Umbenennung eines dynamischen Tabellenblatts:

    Sub DynamischesTabellenblattUmbenennen()
       Dim ws As Worksheet
       Set ws = ActiveWorkbook.Sheets(1) 'Das erste Blatt auswählen
       ws.Name = "MeinNeuerName" 'Umbenennen
    End Sub
  • Beispiel für das Kopieren und Umbenennen eines Arbeitsblatts:

    Sub BlattKopierenUndUmbenennen()
       ActiveWorkbook.Sheets(1).Copy After:=ActiveWorkbook.Sheets(ActiveWorkbook.Sheets.Count)
       ActiveWorkbook.Sheets(ActiveWorkbook.Sheets.Count).Name = "KopiertesBlatt"
    End Sub

Tipps für Profis

  • Nutze On Error Resume Next, um Fehler beim Umbenennen zu ignorieren. Dies kann hilfreich sein, wenn du nicht sicher bist, ob der Name bereits existiert.
  • Erstelle eine Funktion, die überprüft, ob der gewünschte Name bereits verwendet wird, bevor du das Blatt umbenennst.
  • Verwende Application.DisplayAlerts = False, um Warnmeldungen beim Umbenennen auszublenden.

FAQ: Häufige Fragen

1. Wie kann ich ein Blatt umbenennen, das aus einer Zelle den Namen beziehen soll? Du kannst den Namen aus einer Zelle wie folgt beziehen:

Sub BlattUmbenennenMitZelle()
    Dim neuerName As String
    neuerName = ThisWorkbook.Sheets("Tabelle1").Range("A1").Value
    ActiveWorkbook.Sheets(1).Name = neuerName
End Sub

2. Was passiert, wenn ich versuche, ein Blatt in einen Namen umzubenennen, der bereits existiert? Excel wird eine Fehlermeldung anzeigen. Um dies zu vermeiden, solltest du vorher überprüfen, ob der Name bereits existiert.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige