mit Kanonen auf Spatzen ;-)
24.06.2021 16:29:45
Rudi
Hallo,
Option Explicit
Sub Zufall()
Dim arr1(1 To 24, 1 To 2), arrOut(1 To 24, 1 To 1), i, j
For i = 1 To 24
arr1(i, 1) = Rnd
arr1(i, 2) = i
Next
Call QuickSort2(arr1)
For i = 1 To 24
arrOut(i, 1) = arr1(i, 2)
Next
Range("A2:A25") = arrOut
End Sub
Sub QuickSort2(ByRef DasArray, Optional ErsteZeile, Optional LetzteZeile)
On Error Resume Next
Dim UnterGrenze As Long, OberGrenze As Long, aktuelleSpalte As Long
Dim AktuellerWert, GemerkterWert As Variant
If IsMissing(ErsteZeile) Then
ErsteZeile = LBound(DasArray)
End If
If IsMissing(LetzteZeile) Then
LetzteZeile = UBound(DasArray)
End If
UnterGrenze = ErsteZeile
OberGrenze = LetzteZeile
AktuellerWert = DasArray((ErsteZeile + LetzteZeile) / 2, 1)
Do While (UnterGrenze AktuellerWert And OberGrenze > ErsteZeile)
OberGrenze = OberGrenze - 1
Loop
If (UnterGrenze ErsteZeile) Then Call QuickSort2(DasArray, ErsteZeile, OberGrenze)
If (UnterGrenze
Gruß
Rudi