Zufallszahlen ermitteln

109017



Das folgende Makro ermittelt Zufallszahlen. Jede Zahl kommt dabei jedoch nur ein einziges Mal vor.
Sie geben beim Programmstart einfach die gewünschte Menge an Zufallszahlen an. Möchten Sie z. B. Zufallszahlen zwischen 1 und 20 ermitteln, dann erfassen Sie in der InputBox die Zahl 20.

Anschließend werden in Spalte B ab der Zelle B1 die Zahlen 1 bis 20 in zufälliger Reihenfolge aufgelistet, wobei jede Ziffer nur ein einziges Mal vorkommt. Es wird also ausgeschlossen, dass sich Zahlen wiederholen.

Public Sub zufallszahl()
Dim zahl(10000) As Integer
Dim zahlneu As Integer

anzahl = InputBox("Wieviele Zufallszahlen sollen ermittelt werden?")

'Zufallszahl 1 bis 28 ermitteln
For i = 1 To anzahl
zahl(i) = Int((anzahl * Rnd) + 1)
zahlneu = zahl(i)

    'Auf doppelte Zahlen prüfen und neue Zahl berechnen
    For n = 1 To i - 1
        If zahl(n) = zahlneu Then
          zahl(i) = Int((anzahl * Rnd) + 1)
          i = i - 1
        End If
    Next n

'Zahlen in Spalte B schreiben
Sheets(1).Cells(i, 2).Value = zahl(i)

Next i

End Sub