Freigeben über

Excel-VBA - im UserForm ein Auswahl-Kalender erstellen

Anonym
2018-07-12T07:36:53+00:00

Hallo & guten Morgen

Habe ein UserForm in Excel-VBA angelegt mit div. Feldern zum Befüllen. Mit klick auf "Ok" werden die eingegebenen Daten dann in die Excel-Tabelle übernommen. Das funktioniert soweit auch. Allerdings möchte ich jetzt noch ein Feld, wo das Datum eingegeben werden muss. Und dass das dann a) möglichst benutzerfreundlich und b) immer im gleichen Format ist, soll, sobald man das Feld Datum auswählt (per Maus oder Tabsprung), ein Kalender zur Auswahl des Datum erscheinen. Allerdings bin ich daran bisher immer gescheitert.

Benutze Excel 2016 (64-Bit)

Vielen Dank & Grüße

Wastl83

Microsoft 365 und Office | Excel | Für Zuhause | Windows

Gesperrte Frage. Diese Frage wurde aus der Microsoft-Support-Community migriert. Sie können darüber abstimmen, ob sie hilfreich ist, aber Sie können keine Kommentare oder Antworten hinzufügen oder der Frage folgen.

0 Kommentare Keine Kommentare

4 Antworten

Sortieren nach: Am hilfreichsten
  1. Andreas Killer 144.1K Zuverlässigkeitspunkte Freiwilliger Moderator
    2018-07-14T10:11:37+00:00

    @ Andreas Killer: leider hat die Kalenderauswahl im VBA-UserForm überhaupt nicht funktioniert bzw. ich habe das falsch verstanden. :-(

    Naja, das Ding ist nicht die ideale Lösung für Deinen Zweck, aber es geht.

    Zuerst lädst Du die das AddIn von Ron runter, entpackst es, und öffnest es.

    Zum Test ob es funktioniert mach einen Rechts-Klick auf eine Zelle und dann sollte oben im Menü der DatePicker erscheinen.

    Wenn nicht, dann liegt es an Deinen Sicherheitseinstellungen.

    Nun mach mal eine neue Datei

    Im VBA-Editor\Menü\Extras\Verweise und machst einen Haken vor DatePicker (das macht den Code einfacher):

    Füg eine Userform hinzu, in diese eine Textbox und einen Commandbutton und diesen Code

    Option Explicit

    Dim WithEvents Ws As Worksheet

    Private Sub CommandButton1_Click()

      'Event aktivieren

      Set Ws = ActiveSheet

      'Datepicker öffnen

      DatePicker.OpenDatePicker2

    End Sub

    Private Sub Ws_Change(ByVal Target As Range)

      'Event deaktivieren

      Set Ws = Nothing

      'Das Datum aus der Zelle holen

      Me.TextBox1 = Target.Value

      'Zelle wieder herstellen

      DatePicker.UndoDatePicker

    End Sub

    Nun noch ein reguläres Modul und da rein diesen Code:

    Sub Test()

      UserForm1.Show vbModeless

    End Sub

    Ausführen in der Userform auf den Button klicken, tada, geht.

    Andreas.

    2 Personen fanden diese Antwort hilfreich.
    0 Kommentare Keine Kommentare
  2. Anonym
    2018-07-14T07:58:39+00:00

    Vielen Dank für die Antworten.

    @ Andreas Killer: leider hat die Kalenderauswahl im VBA-UserForm überhaupt nicht funktioniert bzw. ich habe das falsch verstanden. :-(

    Über eine Beispiel-Datei würde ich mich freuen.

    Vielen Dank & ein schönes Wochenende

    Sebastian

    0 Kommentare Keine Kommentare
  3. Andreas Killer 144.1K Zuverlässigkeitspunkte Freiwilliger Moderator
    2018-07-13T14:19:44+00:00

    Kannst Du vergessen, da gibt es nix von Microsoft, wurde ersatzlos gestrichen.

    Mittlerweile haben einige sich selber eine Userform als DatePicker gebastelt, z.B. hier

    https://www.rondebruin.nl/win/addins/datepicker.htm

    Das ist zwar primär für Sheets gedacht, aber man kann das Ding auch direkt aus VBA heraus aufrufen.

    Andreas.

    0 Kommentare Keine Kommentare
  4. Anonym
    2018-07-12T08:23:46+00:00

    Hallo Wastl83,

    danke für die Nachricht.

    Bei Fragen zu VBA, Macros u.s.w. sollen Sie zum Microsoft Developer Network gehen. Die Kollegen dort helfen Ihnen gerne weiter.

    Bei weitere Fragen stehen wir Ihnen gerne zu Verfügung.

    MfG,

    Gijs H.

    0 Kommentare Keine Kommentare