Kombinationsfeld mit Monatsnamen füllen

Excel, alle Ver­sio­nen

Die Aufgabe:

  • In ein­er User­Form soll ein Kom­bi­na­tions­feld (Com­boBox) mit Monat­sna­men gefüllt wer­den.

Vorgaben:

  • Der erste Monat in der Liste soll der Vor­monat des aktuellen Datums sein, der let­zte Monat soll der aktuelle Monat im kom­menden Jahr sein.
  • Der Tex­tein­trag der Com­boBox soll im For­mat MMMM JJJJ sein, also voll aus­geschrieben­er Monat und vier­stel­liges Jahr.
  • Die Com­boBox soll automa­tisch beim öff­nen der User­Form gefüllt wer­den.
  • Die Vorauswahl soll der aktuelle Monat sein.
Name der User­Form: beliebig
Name des Kom­bi­na­tions­feldes: cmb­Monate

Tra­gen Sie fol­gen­den Code in den VBA-Bere­ich der User­Form ein:

Option Explicit

Sub UserForm_Activate()
  Dim intIndex As Integer
  Dim strMonat As String, m As Integer
  
  For intIndex = -1 To 12 'Vormonat bis aktueller Monat + 12
    strMonat = Format(DateSerial(Year(Date), _
     Month(Date) + intIndex, 1), "MMMM YYYY")
    m = intIndex + 1
    cmbMonate.AddItem strMonat, m
  Next intIndex
  
  cmbMonate.ListIndex = 1 'Vorauswahl des aktuellen Monats
End Sub

Zugegeben, es geht „ele­gan­ter”, kürz­er. Aber so ist es für Ein­steiger über­sichtlich­er.

Den Code find­en Sie hier in ein­er gepack­ten Datei. Enthal­ten sind dort:

  • MonatsCombo.txt – Der Code als Text­datei. Kopieren und in eine User­Form beliebi­gen Namens ein­fü­gen.
  • MonatsCombo.frm und MonatsCombo.frx – Wer­den gemein­sam genutzt, um eine neue, leere User­Form mit dem Namen Userform1 zu erstellen und fügt dann automa­tisch den Code ein.

▲ nach oben …

[whohit]DL, VS: Com­bo mit Monat­sna­men füllen[/whohit]
Dieser Beitrag wurde unter Code-Schnipsel, Datum und Zeit abgelegt und mit , , , , , verschlagwortet. Setze ein Lesezeichen auf den Permalink.