Microsoft Excel

Excel und VBA: Formeln, Programmierung, Lösungen

Die Excel/VBA-Beispiele

Thema

UserForm-ListBox in Abhängigkeit zur aufrufenden Spalte füllen

Gruppe

ListBox

Problem

Wie kann ich eine UserForm-ListBox in Abhängigkeit der als Spaltenkopf angelegten Schaltfläche mit Werten füllen?

Lösung
Geben Sie den nachfolgenden Code in das Klassenmodul der UserForm ein.

ClassModule: frmVersetzt

Private Sub cmdAbbrechen_Click()
   Unload Me
End Sub

Private Sub cmdEintragen_Click()
   Dim iCounter As Integer, iRow As Integer
   iRow = Cells(Rows.Count, CInt(Me.Tag)).End(xlUp).Row
   For iCounter = 0 To lstWerte.ListCount - 1
      If lstWerte.Selected(iCounter) Then
         iRow = iRow + 1
         Cells(iRow, CInt(Me.Tag)).Value = lstWerte.List(iCounter)
      End If
   Next iCounter
End Sub

Private Sub UserForm_Activate()
   lstWerte.List = Range(Cells(3, CInt(Me.Tag)), _
      Cells(17, CInt(Me.Tag))).Value
End Sub

StandardModule: modMain

Sub CallForm()
   With frmVersetzt
      .Tag = Left(ActiveSheet.Buttons(Application.Caller).Caption, 1)
      .Show
   End With
End Sub