Allgemein erstmal:
Wenn du zusammenhängende Bereiche in ein Listenfeld laden willst, dann mach das einfach so.
Private Sub UserForm_Initialize()
Dim rngData As Excel.Range
'Bereich: A2:F%
Set rngData = Tabelle6.Range(Tabelle6.Cells(Tabelle6.Rows.Count, "A").End(xlUp), "F2")
If rngData.Row >= 2 Then
ListBox1.ColumnCount = rngData.Columns.Count
ListBox1.List = rngData.Value
ListBox1.ListIndex = 0
Else
ListBox1.Clear
End If
'Bereich: J2:O%
Set rngData = Tabelle6.Range(Tabelle6.Cells(Tabelle6.Rows.Count, "J").End(xlUp), "O2")
If rngData.Row >= 2 Then
ListBox2.ColumnCount = rngData.Columns.Count
ListBox2.List = rngData.Value
ListBox2.ListIndex = 0
Else
ListBox2.Clear
End If
End Sub
Wenn du jetzt eine Spalte addieren willst, dann z.B. so:
Dim sum As Variant
Dim i As Long
For i = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(i) Then
sum = sum + ListBox1.List(i, 1) '1 = Spalte 2
End If
Next
'Ausgabe zur Veranschaulichung
Call MsgBox("Summe: " & sum)
Grüße
|