ComboBox-Inhalte alphabetisch sortieren
Schritt-für-Schritt-Anleitung
Um ein Excel Dropdown alphabetisch zu sortieren, kannst du den folgenden VBA-Code verwenden. Dieser Code liest die Inhalte aus einer Tabelle und fügt sie in einer ComboBox hinzu.
- Öffne den VBA-Editor mit
ALT + F11
.
- Füge einen neuen UserForm hinzu.
- Klicke mit der rechten Maustaste auf den UserForm und wähle "Code anzeigen".
- Füge den folgenden Code ein:
Private Sub UserForm_Initialize()
VacationForm.Height = 184
Dim col2 As New Collection
Dim ycolumn As Integer
ycolumn = 4
Dim strZelleText As String
strZelleText = Cells(3, ycolumn).Text
On Error Resume Next
Do Until (strZelleText = "")
strZelleText = VBA.Strings.Replace(strZelleText, vbLf, REPLACE_STR)
ComboBox2.AddItem strZelleText
ycolumn = ycolumn + 1
strZelleText = Cells(3, ycolumn).Text
Loop
ComboBox2.ListIndex = 0
SortierenCombobox
End Sub
Sub SortierenCombobox()
Dim i_Erster As Integer
Dim i_Letzter As Integer
Dim i_Aktuell As Integer
Dim i_Nächster As Integer
Dim s_buffer As String
With UserForm1.ComboBox2
If .ListCount = 0 Then Exit Sub
i_Erster = 0
i_Letzter = .ListCount - 1
For i_Aktuell = i_Erster To i_Letzter
For i_Nächster = i_Aktuell + 1 To i_Letzter
If .List(i_Aktuell) > .List(i_Nächster) Then
s_buffer = .List(i_Nächster)
.List(i_Nächster) = .List(i_Aktuell)
.List(i_Aktuell) = s_buffer
End If
Next i_Nächster
Next i_Aktuell
End With
End Sub
- Schließe den Editor und führe den UserForm aus.
Mit diesem Code wird die ComboBox nach dem Hinzufügen der Elemente alphanumerisch sortiert.
Häufige Fehler und Lösungen
Alternative Methoden
Eine andere Methode, um ein Excel Dropdown zu sortieren, ist die Verwendung einer Hilfsspalte in deinem Arbeitsblatt. Du kannst die Daten in dieser Hilfsspalte mit =SORTIEREN(A1:A10)
(ab Excel 365) sortieren und dann die ComboBox auf diese Hilfsspalte verweisen lassen.
Praktische Beispiele
Wenn du eine ComboBox namens ComboBox2
hast, die Namen von einer Liste in Spalte D (beginnend ab Zeile 3) anzeigt, kannst du den obigen Code direkt verwenden. Achte darauf, dass die Daten, die du sortieren möchtest, in der angegebenen Spalte vorhanden sind.
Tipps für Profis
- Nutze die Excel-Funktion
SORTIEREN
für eine einfache und schnelle Lösung, falls du Excel 365 verwendest. So kannst du die Dropdown-Inhalte dynamisch sortieren, ohne VBA verwenden zu müssen.
- Experimentiere mit der
List
-Eigenschaft, um die Sortierung nach spezifischen Kriterien anzupassen.
FAQ: Häufige Fragen
1. Wie kann ich die Sortierung auch für numerische Werte durchführen?
Du kannst die If
-Bedingung in der SortierenCombobox
-Subroutine anpassen, um eine numerische Vergleichsoperation zu verwenden.
2. Funktioniert dieser Code auch in Excel 2016?
Ja, der VBA-Code funktioniert in den meisten Excel-Versionen, einschließlich Excel 2016. Beachte jedoch, dass die SORTIEREN
-Funktion nur in Excel 365 verfügbar ist.