VBA Code erläutern
05.11.2020 15:29:47
Peer
Von Nepumuk hier im Forum habe ich nachfolgenden Code erhalten, den ich gen an meine Bedü _ rfnisse anpassen möchte, komme aber mit den Spalten der ListBox-Einträge vollkommen durcheinander, weil ich den Code (noch) nicht verstehe.
Private Sub UserForm_Initialize()
Dim lngMonth As Long, ialngIndex As Long, lngRow As Long, lngColumn As Long
Dim avntValues() As Variant, avntTemp As Variant, vntItem As Variant
For lngMonth = 1 To 2 'auf 12 Monate erhöhen!!!
lngRow = 6
With Worksheets(MonthName(Month:=lngMonth))
Do
If IsEmpty(.Cells(lngRow + 1, 4).Value) Then
lngRow = .Cells(lngRow, 4).End(xlDown).Row
Else
lngRow = lngRow + 1
End If
If lngRow = TimeSerial(24, 0, 0) Then avntValues(6, _
ialngIndex) = "24:00"
ElseIf lngColumn = 9 Then
Select Case vntItem
Case Is = TimeSerial(24, 0, 0)
avntValues(10, ialngIndex) = "24,00 "
avntValues(9, ialngIndex) = "24:00"
Case Is > TimeSerial(8, 0, 0)
avntValues(10, ialngIndex) = "12,00 "
Case Else
avntValues(10, ialngIndex) = "Fehler"
Debug.Print vntItem
End Select
lngColumn = lngColumn + 1
End If
lngColumn = lngColumn + 1
Case Else
avntValues(lngColumn, ialngIndex) = vntItem
lngColumn = lngColumn + 1
End Select
Next
avntValues(14, ialngIndex) = .Name & "|" & CStr(lngRow)
ialngIndex = ialngIndex + 1
Else
Exit Do
End If
Loop
End With
Next
lst_Dienstreise.Column = avntValues
End Sub
Meine Spalten werden vollkommen verwirrend dargestellt und ich komme auch mit Durchprobieren nicht wirklich zu einer vielversprechenden Lösung.Kann mir bitte jemand helfen?
LG
Peer