Tekstgegevens in alfabetische volgorde sorteren met VBA in Microsoft Excel

Inhoudsopgave

In dit artikel zullen we een aangepaste functie maken om gegevens in alfabetische volgorde te sorteren.

Ruwe gegevens bestaan ​​uit willekeurige namen die we willen sorteren.

Logische uitleg

We hebben de aangepaste functie "SortString" gemaakt om gegevens alfabetisch te sorteren. Het neemt het bronbereik en de positie als invoer en retourneert waarden op basis van de opgegeven positie. Deze functie maakt eerst een gesorteerde array en vervolgens wordt de opgegeven positie gebruikt om de vereiste waarde uit de gesorteerde array te extraheren.

Code uitleg

UBound(waarden)

De bovenstaande functie wordt gebruikt om het aantal waarden binnen de array te krijgen.

waarden(j) = waarden(j - 1)

De bovenstaande code wordt gebruikt om waarden binnen de array met één index te verschuiven.

Volg hieronder voor de code:

 Optie Expliciete functie SortString(Bron As Range, Positie As Long) As String 'Variabelen declareren Dim Cell As Range Dim values() As String Dim i As Long, j As Long Dim Done As Boolean ReDim values(1 To 1) 'Doorlussen alle cellen in het bereik For Each Cell In Source Done = False i = 1 'Maak een array van gesorteerde naam Do If Cell.Value < values(i) Then Done = True Anders i = i + 1 End If Loop While Done = False En i <= UBound(values) Redim Behoud waarden(1 To UBound(values) + 1) If i <= UBound(values) Then 'Waarde in gesorteerde naamarray aanpassen For j = UBound(values) To i + 1 Step - 1 values(j) = values(j - 1) Next j End If values(i) = Cell.Value Volgende cel 'Waarde toekennen van vereiste positie SortString = values(Position + 1) End Function 

Als je deze blog leuk vond, deel hem dan met je vrienden op Facebook. Ook kunt u ons volgen op Twitter en Facebook.

We horen graag van u, laat ons weten hoe we ons werk kunnen verbeteren en voor u kunnen verbeteren. Schrijf ons op de e-mailsite

U zal helpen de ontwikkeling van de site, het delen van de pagina met je vrienden

wave wave wave wave wave