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

Forumthread: Label mit aktuellem Datum

Label mit aktuellem Datum
04.10.2005 10:09:23
Kira
Hallo,
hab mal wieder ein Datumsproblem.
Mit einer Textbox kann ich über ein Makro immer das aktuelle Datum anzeigen lassen. Eleganter wäre aber ein Label, da ich das nicht anklicken kann.
Kann ich dort ebenfalls immer das aktuelle Datum anzeigen lassen, damit es sich entsprechend beim Öffnen der Mappe immer anpasst?
Bisher habe ich zwar das aktuelle Datum über Caption hinbekommen, wenn ich aber die Mappe abspeicher, das Datum am PC ändere und die Datei neu öffne, Makros aktiviere erscheint das alte Datum weiterhin.
(Info: Es handelt sich hierbei um Label1, das auf mehreren Tabellenblättern erscheint und jeweils immer das aktuelle Datum enthalten soll.)
Freue mich über Vorschläge
Gruß
Kira
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Label mit aktuellem Datum
04.10.2005 10:16:14
Matthias
Hallo Kira,
schreibe den Code in "DieseArbeitmappe":

Private Sub Workbook_Open()
'hier den Code zum Setzen der Daten oder den Prozeduraufruf dazu!
End Sub

Gruß Matthias
AW: Label mit aktuellem Datum
04.10.2005 10:27:40
Kira
Hallo Matthias,
so habe ich das anfangs auch versucht, aber ich kriege ständig eine Fehlermeldung.
Irgendwas scheine ich da falsch zu machen. Vielleicht kannst du mir ein Bsp. für die Codemitt geben, da ich bisher bei verschiedenen Beispielen aus der Recherche ebenfalls nur Fehlermeldungen erhalte.
Gruß
Kira
Anzeige
AW: Label mit aktuellem Datum
04.10.2005 10:47:42
Matthias
Hallo Kira,
zeig' du mir mal deinen Code.
Gruß Matthias
AW: Label mit aktuellem Datum
04.10.2005 11:07:15
Kira
Hallo Matthias,
eine funktionierende Variante wäre:
ActiveWorkbook.Worksheets("Tabelle1").Label1 = Format(Date, "dd. mmmm yyyy")
ActiveWorkbook.Worksheets("Tabelle1").Label1.AutoSize = True
Allerdings wird hier ja nur auf das Label1 der Tabelle1 zugegriffen und nicht auf alle vorhandenen in der Mappe.
Vermutlich lag mein Fehler darin, dass ich versucht habe den Code für eine Userform in meine Tabelle zu zwängen. Da ich aber ohne Userform arbeite funktioniert das wohl eher nicht.
Ich habe mir nun überlegt, ob es nicht einfacher wäre, einmal das Datum z.b. in eine Zelle der 2. Tabelle mit H1=heute() zu schreiben und diesen Wert in die jeweiligen Label1 in der gesamten Mappe zu übernehmen.
Was hältst du davon? Bei einer Textbox ist dies ja möglich, aber geht das auch bei Labels? Wie müsste da dann der Code aussehen?
Gruß
Kira
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Aktuelles Datum in einem Excel-Label anzeigen


Schritt-für-Schritt-Anleitung

Um das aktuelle Datum in einem Excel-Label anzuzeigen, kannst Du den folgenden VBA-Code verwenden. Dieser muss in das Modul "DieseArbeitsmappe" eingefügt werden:

  1. Öffne Deine Excel-Datei und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Suche im Projekt-Explorer nach "DieseArbeitsmappe" und klicke doppelt darauf.

  3. Füge den folgenden Code ein:

    Private Sub Workbook_Open()
       Dim ws As Worksheet
    
       For Each ws In ThisWorkbook.Worksheets
           ws.Label1.Caption = Format(Date, "dd. mmmm yyyy")
           ws.Label1.AutoSize = True
       Next ws
    End Sub
  4. Schließe den VBA-Editor und speichere Deine Excel-Datei als Makro-fähige Datei (*.xlsm).

  5. Schließe und öffne die Arbeitsmappe erneut, um das aktuelle Datum in allen Labels anzuzeigen.


Häufige Fehler und Lösungen

Fehler: "Objekt benötigt" oder "Label nicht gefunden".

Lösung: Stelle sicher, dass das Label den Namen "Label1" hat. Wenn Du mehrere Labels verwendest, musst Du die Namen entsprechend anpassen.

Fehler: Das Datum wird nicht aktualisiert.

Lösung: Überprüfe, ob der Code in "DieseArbeitsmappe" korrekt eingefügt wurde und dass Du die Datei als *.xlsm speicherst. Stelle außerdem sicher, dass Makros aktiviert sind.


Alternative Methoden

Eine alternative Methode besteht darin, das aktuelle Datum in eine Zelle einzufügen und dieses Datum dann in den Labels zu referenzieren. Hier ist der Code, um das Datum in Zelle H1 von "Tabelle2" zu speichern:

ActiveWorkbook.Worksheets("Tabelle2").Range("H1").Value = Date

Und um die Labels in allen Tabellenblättern zu aktualisieren, verwende den folgenden Code:

Private Sub Workbook_Open()
    Dim ws As Worksheet
    Dim aktuellesDatum As String

    aktuellesDatum = ThisWorkbook.Worksheets("Tabelle2").Range("H1").Value

    For Each ws In ThisWorkbook.Worksheets
        ws.Label1.Caption = aktuellesDatum
        ws.Label1.AutoSize = True
    Next ws
End Sub

Praktische Beispiele

Hier ist ein praktisches Beispiel, wie Du das Datum sowohl in einem Label als auch in einer Zelle verwenden kannst:

  1. Füge in "Tabelle2" in Zelle H1 die Formel =HEUTE() ein.
  2. Verwende den oben genannten Code, um das Datum aus Zelle H1 in alle Labels zu übertragen.

Auf diese Weise wird das Datum automatisch aktualisiert, wenn Du die Datei öffnest.


Tipps für Profis

  • Nutze Application.OnTime, um das Datum in regelmäßigen Abständen zu aktualisieren, falls Du eine dynamische Anzeige benötigst.
  • Wenn Du mit mehreren Labels arbeitest, könnte es sinnvoll sein, eine Schleife zu verwenden, um den Code zu optimieren.
  • Achte darauf, dass die Labels in allen Tabellenblättern vorhanden sind, bevor Du den Code ausführst, um Laufzeitfehler zu vermeiden.

FAQ: Häufige Fragen

1. Kann ich das Datum in einem anderen Format anzeigen? Ja, Du kannst das Format in der Format-Funktion anpassen, z.B. Format(Date, "yyyy-mm-dd") für das ISO-Datum.

2. Was ist der Unterschied zwischen einem Label und einer Textbox? Ein Label ist nicht interaktiv und wird hauptsächlich zur Anzeige von Informationen verwendet, während eine Textbox Eingaben vom Benutzer akzeptiert.

3. Muss ich die Datei als Makro-fähige Arbeitsmappe speichern? Ja, um den VBA-Code verwenden zu können, musst Du die Datei als *.xlsm speichern.

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