Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1448to1452
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
VBA: ListBox mit Array füllen
08.10.2015 15:10:49
Tom
Hallo zusammen,
ich möchte eine ListBox über ein Array mit 3 Spalten füllen (Spalte E bis G):
Die ListBox soll alphabetisch nach Spalte E und ohne Duplikate (Spalte E bis G; also 3 Kriterien) gefüllt werden.
Mit folgender Datei wird die ListBox mit Spalte E gefüllt (sortiert und ohne Duplikate):
https://www.herber.de/bbs/user/100663.xlsm
Meine Fragen nun:
1.) Da ich VBA-Anfänger bin, ist das ein Quicksort ?
2.) Umlaute werden am Ende der Liste eingefügt (nach Z). Gibt es eine Möglichkeit, dass Umlaute nicht am Ende erscheinen, sondern z.B. Ä vor B?
3.) Wie ist es möglich die ListBox zusätzlich mit den Spalten 2 und 3 zu füllen? (ohne Duplikate auf alle 3 Spalten erweitern)
Oder denke ich hier zu kompliziert?
Vielen Dank schon mal für eure Tipps!
Mfg
Tom

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA: ListBox mit Array füllen
08.10.2015 15:55:33
Daniel
Hi
ob das jetzt ein Qicksort ist, weiss ich nicht.
Da Excel eine Sortierfunktion hat, nutze ich in der Regel die
als VBA-Anfänger würde ich dir aber raten, die Listbox anders zu befüllen:
1. Zellbereich an eine andere stelle kopieren
2. dort nach Wunsch Duplikate entfernen mit den (Daten - Datentools - Duplikate entfernen)
3. mit der Sortierfunktion von Excel sortieren
4. Zellen von dort in die Listbox schreiben
5. Zellbereich löschen
dir reicht dann dieser Code, um die Listbox zu befüllen:
Private Sub UserForm_Initialize()
With Sheets("Tabelle2")
.Range("E2:G" & .Cells(1, 5).End(xlDown).Row).Copy
.Cells(1, 9).PasteSpecial xlPasteValues
With .Cells(1, 9).CurrentRegion
.Sort key1:=.Cells(1, 1), order1:=xlAscending, Header:=xlNo
.RemoveDuplicates Array(1, 2, 3), Header:=xlNo
End With
With .Cells(1, 9).CurrentRegion
ListBox1.List = .Value
.ClearContents
End With
End With
End Sub

das ist viel einfacher zu Programmieren und du kannst vieles mit dem Recorder aufzeichnen.
Gruß Daniel

Anzeige
AW: VBA: ListBox mit Array füllen
08.10.2015 16:03:12
Mullit
Hallo,
...ja, ist Quicksort...
Gruß, Mullit

AW: VBA: ListBox mit Array füllen
14.10.2015 11:33:31
Tom
Hallo Daniel und Mullit,
vielen Dank für eure Antworten, die haben mir sehr geholfen!
Mfg
Tom

13 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige