In diesem Artikel erstellen wir eine benutzerdefinierte Funktion zum Sortieren von Daten in alphabetischer Reihenfolge.

Rohdaten bestehen aus zufälligen Namen, die wir sortieren möchten.

ArrowMain

Logische Erklärung

Wir haben die benutzerdefinierte Funktion „SortString“ erstellt, um Daten alphabetisch zu sortieren. Es nimmt den Quellbereich und die Position als Eingaben und gibt Werte basierend auf der angegebenen Position zurück. Diese Funktion erstellt zuerst ein sortiertes Array und dann wird die angegebene Position verwendet, um den erforderlichen Wert aus dem sortierten Array zu extrahieren.

ArrowOutput

Code Erklärung

UBound (Werte)

Die obige Funktion wird verwendet, um die Anzahl der Werte innerhalb des Arrays zu ermitteln.

Werte (j) = Werte (j – 1)

Der obige Code wird verwendet, um Werte innerhalb des Arrays um einen Index zu verschieben.

Bitte folgen Sie unten für den Code

Option Explicit

Function SortString(Source As Range, Position As Long) As String

'Declaring variables

Dim Cell As Range

Dim values() As String

Dim i As Long, j As Long

Dim Done As Boolean

ReDim values(1 To 1)

'Looping through all cells in the range

For Each Cell In Source

Done = False

i = 1



'Creating an array of sorted name

Do

If Cell.Value < values(i) Then

Done = True

Else

i = i + 1

End If

Loop While Done = False And i <= UBound(values)



ReDim Preserve values(1 To UBound(values) + 1)



If i <= UBound(values) Then

'Adjusting value in sorted name array

For j = UBound(values) To i + 1 Step -1

values(j) = values(j - 1)

Next j

End If

values(i) = Cell.Value

Next Cell

'Assigning value of required position

SortString = values(Position + 1)

End Function

Wenn Ihnen dieser Blog gefallen hat, teilen Sie ihn mit Ihren Freunden auf Facebook und Facebook.

Wir würden gerne von Ihnen hören, lassen Sie uns wissen, wie wir unsere Arbeit verbessern und für Sie verbessern können. Schreiben Sie uns unter [email protected]