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

Forumthread: Datum in Userform

Datum in Userform
12.05.2007 08:06:00
Gerhard
Hallo,
Ich möchte in meiner Userform in einem Textfeld das Datum im Format >>Samstag, 12.05.2007 darstellen.
im VBA Programm steht:

Private Sub UserForm_Initialize()
Me.txtDate.Value = Format(Date, "dddd, dd.mm.yyyy")
End Sub


Wenn ich die UserForm aufrufen möchte erscheint Fehlermeldung:
Falsche Anzahl an Argumenten oder ungültige Zuweisung zu einer Eigenschaft!
und das Wort Format wird unterlegt dargestellt.
Was mache ich falsch?
Vielen Dank für Eure Hilfe
Gruß
Gerhard

Anzeige

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

Betreff
Datum
Anwender
Anzeige
Hier ...
12.05.2007 08:23:15
Walter
Hallo Gerhard,
Me.Label1 = Format(Date, "dddd" & " dd.mmmm.yyyy")
Me.TextBox1.Value = Format(Date, "dddd" & " dd.mmmm.yyyy")
mfg walter

AW: Hier ...
12.05.2007 08:43:59
Gerhard
Hallo
auch nach Deinem Vorschlag erscheint wieder gleiche Fehlermeldung!
Gruß
Gerhard

AW: Hier ...
12.05.2007 08:46:47
Walter
Hallo Gerhard,
soll das Datum angezeigt werden ? Oder willst Du es so darstellen, wenn Du es eingegeben hast ?
mfg walter

Anzeige
AW: Hier ...
12.05.2007 08:55:56
Gerhard
Hallo
Das jeweils aktuelle Datum soll nach Öffnen der Userform in der TextBox voreingestellt im Format: Samstag, 12.05.2007 dargestellt sein, aber im Bedarfsfall noch verändert werden können und soll dann im gleichen Format in die Zelle Z2 geschrieben werden.
Gruß
Gerhard

Anzeige
AW: Datum in Userform
12.05.2007 08:38:00
Josef
Hallo Gerhard,
das scheint ein Verweis verlorengegangen zu sein.
Schau mal unter > Extras > Verweise
Gruß Sepp

AW: Datum in Userform
12.05.2007 09:35:00
Gerhard
Hi,
was soll ich denn unter Extras Verweise nachschauen?
Die Darstellung des einfachen Datum mit folgender Anweisung wird korrekt dargestellt!
Me.txtDate.Value = Date
nur wenn die Darstellung mit einem Format angezeigt werden sollte erscheint diese Fehlermeldung!
Gruß
Gerhard

Anzeige
AW: Datum in Userform
12.05.2007 09:59:00
Josef
Hallo Gerhard,
ich vermute, das ein Verweis auf eine Bibliothek nicht richtig funktioniert, oder beschädigt ist.
Probier mal

Me.txtDate = VBA.Format(Date, "dddd, dd.mm.yyyy")


Gruß Sepp

Anzeige
AW: Datum in Userform
12.05.2007 10:32:00
Hoffi
Hallo,
wie Josef schon sagte, da muss ein Verweis flöhten gegangen sein.
Bei mir klappt es so:

Private Sub UserForm_Initialize()
TextBox1.Value = Format(Date, "dddd, dd.mm.yyyy")
End Sub


und hier meine Verweise:
Userbild
Grüße
Hoffi

Anzeige
AW: Format-Funktion fehlerhaft?
12.05.2007 11:11:00
Erich
Hallo Gerhard,
zunächst eine Frage: Handelt es sich bei dem Textfeld um eine TextBox, also nicht um ein Label?
Es kann sein, dass nicht ein Verweis fehlt, sondern auf zu viele Bibliotheken verwiesen wird.
In irgendeiner Bibliothek kann eine Funktion "Format" anders als in VBA definiert sein.
Dann ein Tipp:
Setz mal im Code den Cursor in das Wort Format und drück Shift+F2
Dann wird im Objektkatalog eine Funktion Format angezeigt.
Die Funktion sollte aus der Bibliothek VBA, Klasse Strings stammen.
Such auch mal im Objektkatalog nach Format$. Welche Einträge kommen da?
Such anschlie0end auch nach Format. Welche Einträge kommen da?
Es sollte zwei Einträge mit dem Wort "Format" geben, aus
Excel - PivotTable
VBA - Strings,
dazu noch den Eintrag
VBA - Strings für Format$ (also mit angehängtem Dollar)
Bei allen anderen Einträgen ist format nur Teil eines längeren Wortes.
Ist das bei dir so?
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Datum in Userform richtig formatieren


Schritt-für-Schritt-Anleitung

Um das aktuelle Datum in deiner Excel Userform korrekt im Format „Samstag, 12.05.2007“ darzustellen, folge diesen Schritten:

  1. Öffne den VBA-Editor in Excel (Alt + F11).

  2. Erstelle eine neue Userform oder öffne eine bestehende.

  3. Füge eine TextBox (z.B. txtDate) hinzu.

  4. Implementiere den folgenden VBA-Code in das Modul der Userform:

    Private Sub UserForm_Initialize()
       Me.txtDate.Value = Format(Date, "dddd, dd.mm.yyyy")
    End Sub
  5. Speichere deine Änderungen und teste die Userform.

Dieser Code setzt das aktuelle Datum in die TextBox im gewünschten Format.


Häufige Fehler und Lösungen

  • Fehlermeldung: "Falsche Anzahl an Argumenten oder ungültige Zuweisung"
    Diese Fehlermeldung tritt auf, wenn ein Verweis auf eine andere Bibliothek nicht korrekt ist. Überprüfe die Verweise in Excel unter Extras > Verweise und stelle sicher, dass keine Konflikte bestehen.

  • Die Format-Funktion wird nicht erkannt
    Wenn beim Wort Format eine Fehlermeldung erscheint, überprüfe den Verweis im Objektkatalog. Setze den Cursor auf Format und drücke Shift + F2, um die Quelle der Funktion zu überprüfen. Sie sollte aus der Bibliothek „VBA, Klasse Strings“ stammen.


Alternative Methoden

Falls du eine andere Methode zur Formatierung des Datums in der TextBox verwenden möchtest, kannst du auch den direkten VBA-Befehl für die Formatierung nutzen:

Me.txtDate.Value = VBA.Format(Date, "dddd, dd.mm.yyyy")

Diese Methode stellt sicher, dass die Funktion aus der richtigen Bibliothek verwendet wird.


Praktische Beispiele

Hier sind einige Beispiele, wie du das Datum in einer Userform formatieren kannst:

  • Nur das Datum zeigen:
    Wenn du nur das Datum ohne Wochentag zeigen möchtest, kannst du folgenden Code verwenden:

    Me.txtDate.Value = Format(Date, "dd.mm.yyyy")
  • Eingabeformat anpassen:
    Wenn der Benutzer das Datum eingeben soll und du sicherstellen möchtest, dass es im Format dd/mm/yyyy bleibt, kannst du eine Eingabeprüfung hinzufügen:

    Private Sub txtDate_AfterUpdate()
      On Error GoTo ErrorHandler
      Dim enteredDate As Date
      enteredDate = CDate(Me.txtDate.Value)
      Me.txtDate.Value = Format(enteredDate, "dd/mm/yyyy")
      Exit Sub
    ErrorHandler:
      MsgBox "Bitte gib ein gültiges Datum ein!", vbExclamation
    End Sub

Tipps für Profis

  • Vermeide Konflikte mit anderen Bibliotheken: Stelle sicher, dass keine anderen Bibliotheken im VBA-Editor aktiv sind, die die Format-Funktion überschreiben könnten.
  • Verwende DateValue zur Eingabeprüfung: Wenn du sicherstellen möchtest, dass die Eingabe in der TextBox ein gültiges Datum ist, nutze die DateValue-Funktion, um die Eingabe zu validieren.
  • Kombiniere mit anderen Steuerelementen: Du kannst das Datum auch mit einem Kalendersteuerelement kombinieren, um die Benutzereingabe zu erleichtern.

FAQ: Häufige Fragen

1. Wie kann ich das Datum nach der Eingabe in eine Zelle schreiben?
Du kannst das Datum aus der TextBox wie folgt in die Zelle Z2 schreiben:

Private Sub btnSubmit_Click()
    Range("Z2").Value = Me.txtDate.Value
End Sub

2. Was mache ich, wenn die TextBox das Datum nicht korrekt anzeigt?
Überprüfe, ob die TextBox als TextBox und nicht als Label konfiguriert ist. Labels unterstützen keine Benutzereingaben.

3. Wie kann ich das Datum in einem anderen Format anzeigen?
Ändere einfach den Format-String in der Format-Funktion, je nachdem, welches Datumsformat du benötigst.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige