29.06.2016, 19:43
@Ralf, Stefan und alle anderen.
Irgendwas lief vorhin bei der nachträglichen Bearbeitung schief. Ralf hat Recht bezüglich der Effektivität sollte man den Code der Microsoftentwickler benutzen.
Aber wie anfangs gesagt, diese Lösungsmöglichkeiten waren mir alle bekannt. Meine Lösung ist nur eine weiter Facette, die ich als besonders einfach empfinde.
Ich hätte "einfach" schreiben sollen. Stefan hat sich sehr viel Mühe gemacht. Ich persönlich würde bei den meisten Sortieraufgaben wohl auch über den Sheet
gehen.
Hier nochmal meine kleine Code-Spielerei:
Irgendwas lief vorhin bei der nachträglichen Bearbeitung schief. Ralf hat Recht bezüglich der Effektivität sollte man den Code der Microsoftentwickler benutzen.
Aber wie anfangs gesagt, diese Lösungsmöglichkeiten waren mir alle bekannt. Meine Lösung ist nur eine weiter Facette, die ich als besonders einfach empfinde.
Ich hätte "einfach" schreiben sollen. Stefan hat sich sehr viel Mühe gemacht. Ich persönlich würde bei den meisten Sortieraufgaben wohl auch über den Sheet
gehen.
Hier nochmal meine kleine Code-Spielerei:
Code:
Sub Einfaches_sortieren_eines_Arrays()
ReDim afArray(1 To 10000), axArray(1 To 10000), azArray(1 To 10000)
'Datenfeld erzeugen
For i = 1 To UBound(afArray)
afArray(i) = WorksheetFunction.RandBetween(1, 10000) & " Zeichenkette beliebig "
Next i
'Zahlenextraktion
For i = 1 To UBound(axArray)
axArray(i) = Val(afArray(i))
Next i
'Sortiervorgang:
'Je nachdem ob aufsteigend mit Min, absteigend mit Max(axArray)
For i = 1 To UBound(azArray)
p = WorksheetFunction.Match(WorksheetFunction.Min(axArray), axArray, 0)
axArray(p) = ""
azArray(i) = afArray(p)
Next i
End Sub