Gesucht wird in Spalte B, der Filter funktioniert auch schon aber die anzeige in der List box nicht.
Später möchte ich in der Listebox eine Zeile markieren und den entsprechenden Eintrag mutieren können.
Datum Personalnummer Name FZ Was effektive Schadenhöhe Abzug MFH Abzug Transport Abzug Diverses Absenztage Abzug Absenzen Saldo Hilfszeile
02.01.2021 184762 Atene Luigi 70.032 Stossecke Li. + Deckel ersetzt CHF 250.00 CHF 250.00 CHF - CHF - 0 CHF - CHF 250.00 2
02.01.2021 184820 Bursac Dragana 70.032 Stossecke Li. + Deckel ersetzt CHF 250.00 CHF 250.00 CHF - CHF - 0 CHF - CHF 250.00 3
04.01.2021 184795 Algarbi Snan 70.145 Rolle CHF 1'200.00 CHF 1'200.00 CHF - CHF - 0 CHF - CHF 1'200.00 4
Mein Code:
Private Sub ListUpdate()
Me.ListBox1.Clear
Dim ThisBook As Workbook
Set ThisBook = ActiveWorkbook
Dim lZeil, fille, Filt As String
Dim lZeile, LLibox As Long
lZeil = ThisBook.Worksheets("Datensätze").Cells(Rows.Count, 1).End(xlUp).Row + 1
If Not ActiveSheet.AutoFilterMode Then
ThisBook.Worksheets("Datensätze").Range("A1:M" & lZeil).AutoFilter
' ActiveWorkbook.Worksheets("Datensätze").AutoFilter.Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Datensätze").AutoFilter.Sort.SortFields.Add2 Key:=Range("A1:A" & lZeil), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Datensätze").AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End If
Filt = ThisBook.Worksheets("Einstellungen").Range("B1").Value
' 1ter Filter
ThisBook.Worksheets("Datensätze").Range("A1:M" & lZeil).AutoFilter Field:=2, Criteria1:=Filt, Operator:=xlFilterValues
ThisBook.Worksheets("Datensätze").Activate
With Me.ListBox1
.ColumnCount = 13
.ColumnWidths = "50 pt;0 pt;0 pt;50 pt;50 pt;50 pt;50 pt;50 pt;50 pt;50 pt;50 pt;50 pt;50 pt;"
'.ColumnHeads = True
End With
With ThisBook.Worksheets("Datensätze")
fille = ThisBook.Worksheets("Datensätze").Cells(Rows.Count, 1).End(xlUp).Row
For lZeile = 1 To fille
If .Cells(lZeile, 1) = "" Then Exit For
If .Rows(lZeile).Hidden = False Then
ListBox1.AddItem
Label15.Caption = ThisBook.Worksheets("Einstellungen").Range("B1").Value & " " & ThisBook.Worksheets("Einstellungen").Range("D1").Value
ListBox1.List(LLibox, 0) = .Cells(lZeile, 1).Value
ListBox1.List(LLibox, 1) = .Cells(lZeile, 2).Value
ListBox1.List(LLibox, 2) = .Cells(lZeile, 3).Value
ListBox1.List(LLibox, 3) = .Cells(lZeile, 4).Value
ListBox1.List(LLibox, 4) = .Cells(lZeile, 5).Value
ListBox1.List(LLibox, 5) = .Cells(lZeile, 6).Value
ListBox1.List(LLibox, 6) = .Cells(lZeile, 7).Value
ListBox1.List(LLibox, 7) = .Cells(lZeile, 8).Value
ListBox1.List(LLibox, 8) = .Cells(lZeile, 9).Value
ListBox1.List(LLibox, 9) = .Cells(lZeile, 10).Value
ListBox1.List(LLibox, 10) = .Cells(lZeile, 11).Value
ListBox1.List(LLibox, 11) = .Cells(lZeile, 12).Value
ListBox1.List(LLibox, 12) = .Cells(lZeile, 13).Value
LLibox = LLibox + 1
TextBox9.Value = .Cells(lZeile, 3).Value
ThisBook.Worksheets("einstellungen").Range("B1").Value = TextBox1.Value
Label11.Caption = "Auszahlung 1 Quartal " & ThisBook.Worksheets("Einstellungen").Range("D3").Value & " CHF"
Label12.Caption = "Auszahlung 2 Quartal " & ThisBook.Worksheets("Einstellungen").Range("D4").Value & " CHF"
Label13.Caption = "Auszahlung 3 Quartal " & ThisBook.Worksheets("Einstellungen").Range("D5").Value & " CHF"
Label14.Caption = "Auszahlung 4 Quartal " & ThisBook.Worksheets("Einstellungen").Range("D6").Value & " CHF"
End If
Next
End With
ActiveSheet.ShowAllData
End Sub
hier noch mein Sheet: https://www.herber.de/bbs/user/148496.xlsm