Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Datum als Tabellenblattname

Forumthread: Datum als Tabellenblattname

Datum als Tabellenblattname
01.03.2006 13:02:53
Alexander
Hi,
Gibt es eine Moeglichkeit, den Tabellenblattnamen (hier da Datum) so zu automatisieren, dass er quasi mit einer Formel versehen wird? Ziel waere es ein Tabellenblatt zu kopieren und automatisch das darauffolgende Datum als Namen zu bekommen ohne es manuell zu aendern. Sicherlich ein Luxusproblem, aber vielleicht gibt es ja eine Loesung.
Vielen Dank,
Alexander
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datum als Tabellenblattname
01.03.2006 13:20:06
Tobi
Hi

Sub NeuerTag()
Dim sh As Worksheet
With Worksheets
Set sh = .Add
sh.Name = VBA.Date
sh.Move , Sheets(.Count)
End With
End Sub

AW: Datum als Tabellenblattname
01.03.2006 13:34:12
Alexander
Hi Tobi & Franz,
Danke fuer die Codes. Ich habe sie im Code des Tabellentag (Rechtsklick "View Code") einkopiert. Dies hat aber leider nicht funktioniert. Wenn ich das Tabellenblatt kopiere (STRG + drag) wird der gleiche Name mit Endung (2) uebergeben (hier: aus "01.03.2006" wird "01.03.2006 (2)"). Ziel soll jedoch sein "02.03.2006".
Welche Schritte muss ich genau verfolgen, um das Makro richtig einzubauen?
Sorry fuer die Unwissenheit und Danke.
A
Anzeige
AW: Datum als Tabellenblattname
01.03.2006 13:34:23
Alexander
Hi Tobi & Franz,
Danke fuer die Codes. Ich habe sie im Code des Tabellentag (Rechtsklick "View Code") einkopiert. Dies hat aber leider nicht funktioniert. Wenn ich das Tabellenblatt kopiere (STRG + drag) wird der gleiche Name mit Endung (2) uebergeben (hier: aus "01.03.2006" wird "01.03.2006 (2)"). Ziel soll jedoch sein "02.03.2006".
Welche Schritte muss ich genau verfolgen, um das Makro richtig einzubauen?
Sorry fuer die Unwissenheit und Danke.
A
Anzeige
AW: Datum als Tabellenblattname
01.03.2006 13:24:36
Franz
Hallo Alexander,
hier eine kleine Variante
Sub Makro1()
ActiveSheet.Copy Before:=Sheets(1)
ActiveSheet.Name = Format(Now + 1, "YYYYMMDD")
End Sub

Gruß
Franz
AW: Datum als Tabellenblattname
01.03.2006 13:33:07
Alexander
Hi Tobi & Franz,
Danke fuer die Codes. Ich habe sie im Code des Tabellentag (Rechtsklick "View Code") einkopiert. Dies hat aber leider nicht funktioniert. Wenn ich das Tabellenblatt kopiere (STRG + drag) wird der gleiche Name mit Endung (2) uebergeben (hier: aus "01.03.2006" wird "01.03.2006 (2)"). Ziel soll jedoch sein "02.03.2006".
Welche Schritte muss ich genau verfolgen, um das Makro richtig einzubauen?
Sorry fuer die UNwissenheit und Danke.
A
Anzeige
AW: Datum als Tabellenblattname
01.03.2006 15:26:55
Franz
Hallo Alexander,
Der Code muss in ein Modul der Datei kopiert werden.
Dazu VBA-Editor mit Alt+F11 öffnen und falls noch nicht vorhanden für das VBA-Projekt ein Modul einfügen (via rechte Maustaste).
In das Fenster des Moduls kopierst Du den Code. ggf noch den Namen des MAkros anpassen (einfach "Makro1" überschreiben). Falls die Schreibweise für das Datum anders sein soll, dann die Syntax hinter "Format" anpassen. Ich persönlich bin aber kein Freund von Punkten in den Namen von Tabellenblättern.
Im EXCEL-Programmfenster jetzt die Tabelle aktivieren (anklicken), die kopiert werden soll, und via Menü Extras--Makros--ausführen das Makro starten.
Gruß
Franz
P.S. unter einer anderen Frage habe ich Dir eine Beispieldatei mit dem Code gepostet.
Anzeige
AW: Datum als Tabellenblattname
01.03.2006 13:33:12
Alexander
Hi Tobi & Franz,
Danke fuer die Codes. Ich habe sie im Code des Tabellentag (Rechtsklick "View Code") einkopiert. Dies hat aber leider nicht funktioniert. Wenn ich das Tabellenblatt kopiere (STRG + drag) wird der gleiche Name mit Endung (2) uebergeben (hier: aus "01.03.2006" wird "01.03.2006 (2)"). Ziel soll jedoch sein "02.03.2006".
Welche Schritte muss ich genau verfolgen, um das Makro richtig einzubauen?
Sorry fuer die UNwissenheit und Danke.
A
Anzeige
AW: Datum als Tabellenblattname
01.03.2006 13:33:22
Alexander
Hi Tobi & Franz,
Danke fuer die Codes. Ich habe sie im Code des Tabellentag (Rechtsklick "View Code") einkopiert. Dies hat aber leider nicht funktioniert. Wenn ich das Tabellenblatt kopiere (STRG + drag) wird der gleiche Name mit Endung (2) uebergeben (hier: aus "01.03.2006" wird "01.03.2006 (2)"). Ziel soll jedoch sein "02.03.2006".
Welche Schritte muss ich genau verfolgen, um das Makro richtig einzubauen?
Sorry fuer die UNwissenheit und Danke.
A
Anzeige
AW: Datum als Tabellenblattname
01.03.2006 13:33:30
Alexander
Hi Tobi & Franz,
Danke fuer die Codes. Ich habe sie im Code des Tabellentag (Rechtsklick "View Code") einkopiert. Dies hat aber leider nicht funktioniert. Wenn ich das Tabellenblatt kopiere (STRG + drag) wird der gleiche Name mit Endung (2) uebergeben (hier: aus "01.03.2006" wird "01.03.2006 (2)"). Ziel soll jedoch sein "02.03.2006".
Welche Schritte muss ich genau verfolgen, um das Makro richtig einzubauen?
Sorry fuer die UNwissenheit und Danke.
A
Anzeige
;
Anzeige

Infobox / Tutorial

Datum als Tabellenblattname automatisieren


Schritt-für-Schritt-Anleitung

Um den Namen eines Tabellenblatts automatisch auf das nächste Datum zu setzen, kannst Du ein VBA-Makro verwenden. Folge dieser Schritt-für-Schritt-Anleitung:

  1. VBA-Editor öffnen: Drücke Alt + F11, um den VBA-Editor zu öffnen.

  2. Modul einfügen: Klicke mit der rechten Maustaste auf das VBA-Projekt und wähle "Modul einfügen".

  3. Code einfügen: Kopiere den folgenden Code in das Modul:

    Sub NeuerTag()
        Dim sh As Worksheet
        With Worksheets
            Set sh = .Add
            sh.Name = Format(Now + 1, "DD.MM.YYYY")
            sh.Move , Sheets(.Count)
        End With
    End Sub
  4. Makro ausführen: Aktiviere das gewünschte Tabellenblatt und gehe zu Extras -> Makros -> Ausführen, um das Makro zu starten.


Häufige Fehler und Lösungen

  • Problem: Der Name des kopierten Tabellenblatts bleibt gleich, aber mit einer Endung (z.B. "(2)").

    • Lösung: Stelle sicher, dass Du das Makro im richtigen Modul eingefügt hast und dass Du das Makro über das Menü ausführst, anstatt das Tabellenblatt manuell zu kopieren.
  • Problem: Der Code funktioniert nicht.

    • Lösung: Überprüfe, ob der Code korrekt kopiert wurde und dass Du die richtige Excel-Version verwendest. Der Code sollte in Excel 2010 oder neuer funktionieren.

Alternative Methoden

Wenn Du keine VBA-Makros verwenden möchtest, kannst Du auch die Funktion "Tabelle kopieren" verwenden, um das Datum manuell einzufügen. Du kannst das kopierte Blatt dann umbenennen, indem Du das Datum im gewünschten Format eingibst. Dies ist jedoch nicht so automatisiert wie mit einem Makro.


Praktische Beispiele

Hier sind einige Beispiele, wie Du das Makro anpassen kannst:

  1. Namen im Format "YYYYMMDD":

    ActiveSheet.Name = Format(Now + 1, "YYYYMMDD")
  2. Namen im Format "Monat-Tag-Jahr":

    ActiveSheet.Name = Format(Now + 1, "MM-DD-YYYY")

Diese Anpassungen bieten Dir Flexibilität, um den Namen des Tabellenblatts nach Deinen Wünschen zu formatieren.


Tipps für Profis

  • Automatisierung: Wenn Du oft neue Tabellenblätter erstellst, kannst Du das Makro in eine Schaltfläche auf dem Excel-Arbeitsblatt einfügen, um die Erstellung zu vereinfachen.
  • Fehlerbehandlung: Füge eine einfache Fehlerbehandlung in Deinen Code ein, um sicherzustellen, dass der Name des Tabellenblatts nicht doppelt vergeben wird.

    On Error Resume Next
    sh.Name = Format(Now + 1, "DD.MM.YYYY")
    On Error GoTo 0

FAQ: Häufige Fragen

1. Frage
Wie kann ich das Makro anpassen, um das Datum in einem anderen Format anzuzeigen?
Antwort: Du kannst die Formatierung im Code ändern, indem Du das Datum im gewünschten Format angibst, z.B. "DD.MM.YYYY" oder "YYYY-MM-DD".

2. Frage
Funktioniert das Makro in allen Excel-Versionen?
Antwort: Der bereitgestellte Code sollte in Excel 2010 und neueren Versionen funktionieren. Ältere Versionen könnten Unterschiede aufweisen.

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