Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1300to1304
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zufallszahl generieren

Zufallszahl generieren
04.03.2013 16:02:30
TOYY1
Hallo an Alle,
ich habe ein Anliegen und hoffe Ihr könnt mir dabei helfen. Ich lasse mir über eine Schleife Zufallszahlen zwischen 1 und 10 generieren. Wie kann ich ausschließen, dass eine Zufallszahl nicht zwei mal generiert wird? Quasi beim x+nten Durchgang alle vorigen Zahlen nicht enthalten sind... Das stellt mich gerade vor ein unlösbares Problem. Ich hoffe es kann mir jemand weiter helfen.
Vielen Dank und viele Grüße,
Frank

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zufallszahl generieren
04.03.2013 16:21:00
Daniel
Hi
per VBA:
1. schreibe die Zahlen von 1-10 in ein Array.
2. tausche jetzt jeden Array-Wert mit einem zufällig gewählten Wert des Arrays.
damit bekommst du eine zufällige Reihenfolge der 10 Werte, ohne das die Werte doppelt sind.
dh wenn zu 5 zufällige Werte zwischen 1 und 10 ohne doppelte brauchst, nimmst du nach dem Vertauschen die ersten 5 Werte.
hier der Code dazu:

Sub test()
Dim ZuZa(1 To 10)
Dim i As Long
Dim x As Long
Dim Zwischenspeicher As Long
'--- Array befüllen
For i = 1 To 10
ZuZa(i) = i
Next
'--- Zufällige Reihenfolge durch Tauschen erzeugen
For i = 1 To 10
Zwischenspeicher = ZuZa(i)
x = WorksheetFunction.RoundUp(Rnd() * 10, 0)
ZuZa(i) = ZuZa(x)
ZuZa(x) = Zwischenspeicher
Next
End Sub
in Excel würde ich so vorgehen:
1. schreibe die Werte von 1-10 in eine Spalte untereinander
2. schreibe daneben in eine Hilfsspalte die Formel =Zufallszahl()
3. sortiere die beiden Spalten nach der Zufallszahl. (beim Sortieren wird die Funktion Zufallszahl gleich wieder neu berechnet, so daß du bei jedem Sortien eine neue Reihenfolge bekommst.
Gruß Daniel

Anzeige
AW: Zufallszahl generieren
04.03.2013 16:21:01
Rudi
Hallo,
arr2 enthält 1-10 in zufälliger Reihenfolge.
Sub aaaa()
Dim arr1(1 To 10), arr2(1 To 10), i
For i = 1 To 10
Randomize
arr1(i) = Rnd
Next
For i = 1 To 10
arr2(i) = WorksheetFunction.Match(WorksheetFunction.Small(arr1, i), arr1, 0)
Next
End Sub

Gruß
Rudi

AW: Zufallszahl generieren
04.03.2013 17:09:01
TOYY1
Vielen Dank an euch drei, das hilft mir schon einmal weiter. Ich habe ein kleine Datei angehangen. Es soll im Prinzip per Zufall ausgewählt werden wer telefonieren muss. Deshalb bin ich grad nicht sicher, ob die VAriante des Umsortierens mir weiter hilft? Aber ich schaue mir eure Links und Codes erst einmal an.
https://www.herber.de/bbs/user/84181.xls
Viele Grüeß und nochmals Danke,
Frank

Anzeige
AW: Zufallszahl generieren
05.03.2013 15:11:11
Klaus
Hallo Frank,
es sind doch schon alle Lösungen geliefert, du musst sie nur noch einbauen!
https://www.herber.de/bbs/user/84198.xlsm
Grüße,
Klaus M.vdT.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige