ich habe mir ein 3x3 Feld mit Zufallszahlen von 20-40 erstellt. Allerdings kommen in diesem Bereich öfter doppelte Zahlen drin vor. Wie kann ich also ein Bereich erstellen in dem die Zahlen von 20-40 nur einmal vorkommen dürfen?
Sub Beispiel()
For ze = 1 To 8 'Zeilen 1 - 8
For sp = 1 To 12 'Spalte C - N
rd1: Randomize 'Wert 1-96
x = Int(97 * Rnd)
If x = 0 Or x > 96 Then GoTo rd1
'letzte Zahl manuell auswerten
Zahl = [c100].Value 'Summenformel für letzte Zahl
If ze = 8 And sp = 12 Then _
If Zahl > 0 And Zahl
Um einen Zufallsbereich in Excel zu erstellen, in dem jede Zahl nur einmal vorkommt, kannst Du folgende Schritte befolgen:
=INDEX($A$1:$A$21, RANG(GRUNDZAHL(ZUFALLSZAHL()), $B$1:$B$21))
Fehler: Doppelte Zahlen erscheinen in den Ergebnissen.
Fehler: Die Zufallszahlen ändern sich bei jeder Berechnung.
Eine weitere Möglichkeit, Zufallszahlen ohne Duplikate zu erzeugen, ist die Verwendung eines Makros. Hier ist ein einfaches VBA-Beispiel:
Sub ZufallszahlenOhneDuplikate()
Dim Zahlen(1 To 21) As Integer
Dim i As Integer, ZufallsIndex As Integer
Dim Ausgabe As Collection
Set Ausgabe = New Collection
' Zahlen von 20 bis 40 in das Array einfügen
For i = 1 To 21
Zahlen(i) = 19 + i
Next i
' Zufällige Auswahl ohne Duplikate
Randomize
For i = 1 To 12
Do
ZufallsIndex = Int((21 - 1 + 1) * Rnd + 1)
Loop While InCollection(Ausgabe, Zahlen(ZufallsIndex))
Ausgabe.Add Zahlen(ZufallsIndex)
Cells(i, 1).Value = Zahlen(ZufallsIndex)
Next i
End Sub
Function InCollection(col As Collection, item As Variant) As Boolean
On Error Resume Next
InCollection = Not IsEmpty(col(item))
On Error GoTo 0
End Function
Beispiel für eine Zufallsziehung aus einer Liste ohne doppelte Werte:
Geburtstagsparadoxon:
RANDBETWEEN
, um Zufallszahlen in einem bestimmten Bereich zu generieren, aber kombiniere sie mit anderen Funktionen, um Duplikate zu vermeiden.UNIQUE
ein (verfügbar in Excel 365 und Excel 2021), um eine Liste von eindeutigen Zufallszahlen zu erhalten.1. Wie kann ich sicherstellen, dass meine Zufallszahlen immer einzigartig sind? Um sicherzustellen, dass jede Zahl nur einmal vorkommt, kannst Du die oben genannten Methoden verwenden, die entweder die INDEX- und RANG-Funktionen oder VBA-Skripte beinhalten.
2. Was kann ich tun, wenn ich mehr als 21 eindeutige Zufallszahlen benötige? In diesem Fall könntest Du den Bereich der Zahlen erhöhen oder eine alternative Methode wie die Verwendung einer Hilfsspalte in Betracht ziehen, um die Anzahl der benötigten Werte zu erreichen.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen