AW: Fehlermeldung VBA
27.04.2023 13:05:46
Daniel
Hi
wenn du eine Listbox mit .Additem füllst, dann darf die Listbox maximal 10 Spalten haben.
braucht man mehr Spalten, so muss man die Werte in einem Array sammeln und der Eigenschaft LIST übergeben.
das kannst du so machen.
Hier werden die Zeilen, die in die Listbox müssen, per Formel mit 1 markiert
dann sortiert mal die Liste danach, so dass sie einen lückenlosen Block bilden.
Dann kann man diesen Zellbereich als ganzes über die Zuweisung an die List-Eigenschaft der Listbox übergeben.
zum Schluss sortiert man wieder zurück, die originalreihenfolge ist in der ersten Hilfsspalte gesichert.
with Tabelle9.Usedrange
With .Columns(.columns.Count + 1).Resize(, 2)
.Columns(1).FormulaR1C1 = "=Row()"
.Columns(2).FormulaR1C1 = "=IF(RC1&RC2&RC3=""" & varCombos & """,1,"""")"
.Formula = .Value
if worksheetfunction.Sum(.Columns(2)), > 0 then
.EntrieRow.Sort Key:=.Cells(1, 2), order1:=xlascending, header:xlyes
Listbox1.List = .Columns(2).SpecialCells(xlcelltypecontsants, 1).EntireRow.Resize(, 29).value
.EntireRow.Sort Key:=.cells(1, 1), order1:=xlascending, Header:=xlyes
.Clearcontents
end if
end with
Gruß Daniel