Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: zahlen zufällig füllen (zufallsgenerator)

zahlen zufällig füllen (zufallsgenerator)
Regenmacher
hallo, ich einer spalte sollen 5000 zahlen stehen, alle natürlich unterschiedlich, alle 7stellig und mit einer 9 beginnen. wie kann man das per zufallsgenerator erzeugen lassen? wie verändert man die variablen darin für die anzahl der stellen (in dem fall 7stellig) bzw. für das format, dass das ganze mit einer 9 immer beginnen muss?
vielen dank im voraus
Anzeige

38
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
..oder schau mal hier... owT-Gruß
robert
Nick-Names
NickNames sind nicht erwünscht. Diese Frager werden bei der Beantwortung nicht gerade bevorzugt behandelt. Nenne Deinen Vornamen, damit man Dich ansprechen kann.
Anzeige
AW: ..oder schau mal hier... owT-Gruß
Andreas
hi, also der link hilft mir nicht weiter.
ich versteh da rein gar nichts. es sollen ja nicht zufallszahlen aus vorhandenen zahlen gezogen werden sondern zufallszahlen erstellt werden.
Zufallsbereich(.....
robert
hi,
meinst du so ?
=Zufallsbereich(9000000;9999999)
gruß
robert
Zufallsbereich(.....) in Spalte A
Erich
Hi Robert,
damit könnte man A1:A5000 füllen.
Die Dublettenvermeidung in den anderen Spalten muss wohl bleiben.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
@Erich-was meinst Du ?...
robert
Die Dublettenvermeidung in den anderen Spalten muss wohl bleiben
hi,
das verstehe ich nicht ?
welche anderen spalten ?
gruß
robert
unterschiedliche Zahlen und...
Erich
Hi Robert,
"Dublettenvermeidung" soll sein - Andreas hat eingangs geschrieben: "alle natürlich unterschiedlich".
Mit den "anderen Spalten" meine ich die Spalten B:D der Tabelle im Link
http://www.excelformeln.de/formeln.html?welcher=152
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
Excelformeln hilft vielleicht doch?
Erich
Hi Andreas (eine Anrede schadet nicht und kostet wenig),
was passiert denn auf der Excelformeln-Seite in Spalte A? Da werden 10 Zufallszahlen erzeugt.
Der Rest dienst dazu, Dubletten zu vermeiden und- nachher - die Sortierung aufzuheben, falls gewünscht.
Bei dir könnte in Spalte A (A1 bis A5000) etwa diese Formel stehen:
=9000000+GANZZAHL(ZUFALLSZAHL()*1000000)+1 (oder ohne "+1")
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort (Dies war ein Gruß.)
Anzeige
AW: Excelformeln hilft vielleicht doch?
Andreas
erich .. guten abend, muss ich diese formel (=9000 usw ... ) in eine zelle schreiben oder muss ich a1 bis a5000 markieren? wie geht das?
Kopieren einer Formel in mehrere Zellen
Erich
Hi Andreas,
schreibe die Formel in Zelle A1.
In A5000 kannst du z. B. ein x schreiben.
Dann kopierst du A1 in die Zwischenablage (Strg+C).
Unter Verwendung der Tasten Strg, Umschalt (Shift) und "Pfeil nach unten" kannst du den Bereich A2:A5000 markieren
und die Formel dann mit "Eingabe" ("Enter") dort hineinkopieren.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
Nahezu 5000 Zufallszahlen ohne Wdh.
NoNet
Hallo Andreas,
ganz einfach ist es ohne VBA nicht, GENAU 5000 UNTERSCHIEDLICHE zufallszahlen zu ermitteln.
Wenn es jedoch "fast" 5000 unterschiedliche Zahlen sein dürfen, dann genügt Dir evtl. folgende Lösung :
ABC
1
2
3
4
5
6
7
8
9
10

Diese Funktion in A2 eingeben und bis A5001 runterkopieren :
=GANZZAHL(ZUFALLSZAHL()*10^6)+9*10^7
Diese Funktion zum "Zählen" der UNTERSCHIEDLICHEN Zahlen bitte in C2 eingeben und mit Strg+Shift+ENTER bestätigen :
=SUMME(1/ZÄHLENWENN(A2:A5001;A2:A5001))
Gruß, NoNet
Anzeige
AW: Nahezu 5000 Zufallszahlen ohne Wdh.
Andreas
klingt schonmal gut NoNet, nur wieso kann man damit nicht genau 5000 verschiedene machen? heißt das in deinem beispiel bei 4985 das sich 15 zahlen wiederholen?
Ja, 15 Wdh. - statistische Wahrscheinlichkeit
NoNet
Hallo Andreas,
wie du auch den anderen Beiträgen entnehmen kannst existiert in Excel keine "fertige" Funktion zum Erstellen von exakt 5000 unterschiedlichen Zufallszahlen.
Mit Roberts Lösungsvorschlag (=ZUFALLSBEREICH(9000000;9999999)) werden zwar Zufallszahlen im gewünschten Zahlenraum erstellt, aber auch hierbei sind theoretisch "Doppler" möglich. Das lässt sich über die Wahrscheinlichkeitsrechnung sogar statistisch belegen !
Genau aus diesem Grund ermittelt auch mein Lösungsvorschlag etliche redundante Zahlen, da es im Zahlenraum 0 bis 1 (bei 7 stelliger Genauigkeit) statistisch auch zu Dopplern kommen kann (aus genau diesem Grund gewinnt auch ab und zu jemand einen Millionenbetrag im Lotto : Wenn nämlich "seine" Zahlen und die gezogenen Zahlen "zufällig" identisch sind ;-).
Die Redundanzen lassen sich nur über zusätzliche Funktionen in Hilfsspalten eliminieren - siehe Erichs Lösungsvorschlag in Verbindung mit www.excelformeln.de
Gruß, NoNet
PS: Per VBA könnte ich Dir auch eine funktionierende Lösung anbieten !
Anzeige
AW: Ja, 15 Wdh. - statistische Wahrscheinlichkeit
Andreas
wenn du mir kurz erklärst, wie das in VBA gehen kann , vielleicht kapier ich es ja :-).
eigentlich müßten es auch gar keine zufallszahlen sein. mir würde reichen wenn die zahlen 1 bis 5000 nicht der reihenfolge nach nach unten erscheinen sondern in einer zufälligen anordnung OHNE dass zwei zahlen hintereinander gleich sind, verstehst du in etwa wie ich meine?
also z. B. so
9005000
9004500
9004999
9002100
usw
Anzeige
Das ähnelt einem Teil meines Vorschlags
Erich
Hi NoNet,
mit deiner Formel in Sp. A sind die Zahlen alle 9stellig und beginnen mit 90.
Statt 10^7 muss da wohl noch mal 10^6 stehen - und entspricht dann meinem Vorschlag.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
8stellig - nicht 9stellig - 7 sollte sein (owT)
Erich
..anderes Thema...
robert
hi,
lt.letzter nachricht von Andreas verstehe ich es so:
nur die zahlen 1-5000 unsortiert, aber siebenstellig - 9002452 usw..
oder?
gruß
robert
Anzeige
AW: ..anderes Thema...
Andreas
stimmt robert .. "unsortiert" soll aber heißen, es dürfen KEINE zahlen der reihe nach vorkommen, immer unterschiedlich, IMMER.
leicht geänderte Formel in Spalte A
Erich
Hi zusammen,
na, dann ändert sich die Formel in Spalte A eben zu
=9000000+GANZZAHL(ZUFALLSZAHL()*5000)
Danach bleibt es dabei, dass die Dubletten mittels der Formeln von Excelformeln.de eliminiert
und die Zahlen dann wieder "unsortiert" werden müssen.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: zahlen zufällig füllen (zufallsgenerator)
Original
Hi,
mit VBA und ohne Doppler:
Sub Zufall()
Dim i As Integer
Application.ScreenUpdating = 0
Cells(1, 1) = Int(9000000 + Rnd * 1000000)
For i = 2 To 5000
Do
Cells(i, 1) = Int(9000000 + Rnd * 1000000)
Loop Until Cells(i, 1)  Cells(i - 1, 1)
Next
Application.ScreenUpdating = -1
End Sub

mfg Kurt
Anzeige
@Original Kurt
Peter
Hallo Kurt,
dann teste Deine 5000 Zahlen einmal mit dem beigefügten Makro und filtere anschließend auf (Nichtleere)
Public Sub DoppelteSuchen()
Dim lZeile As Long
Application.ScreenUpdating = 0
For lZeile = 1 To 5000
If Application.WorksheetFunction.CountIf(Columns(1), Range("A" & lZeile).Value) > 1 Then
Range("B" & lZeile).Value = "doppelt " & _
Application.WorksheetFunction.CountIf(Columns(1), Range("A" & lZeile).Value)
End If
Next lZeile
Application.ScreenUpdating = -1
End Sub
Gruß Peter
Anzeige
Zufallsgenerator ohne Doppelte
Erich
Hi Kurt,
so geht es ohne Dubletten:

Sub ZufList()
Dim arrZ, ii As Long
arrZ = Zufallsliste(5000)
For ii = 1 To 5000
arrZ(ii) = arrZ(ii) + 9000000
Next ii
Cells(1, 1).Resize(5000) = Application.Transpose(arrZ)
End Sub
Function Zufallsliste(intI As Integer)
' Zahlen 1 bis Anzahl ohne Wiederholungen - ingUR 04.12.2006
' www.herber.de/forum/archiv/824to828/t825988.htm
Dim ii As Long, iLosNr As Long, arrOK() As Boolean, arrLos() As Long
ReDim arrOK(1 To intI), arrLos(1 To intI)
Randomize
For ii = 1 To intI
Do
iLosNr = Int((intI * Rnd) + 1)
If Not arrOK(iLosNr) Then arrLos(ii) = iLosNr: arrOK(iLosNr) = True
Loop Until arrLos(ii) > 0
Next
Zufallsliste = arrLos
End Function
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Zufallsgenerator ohne Doppelte
Andreas
wie kann ich solche funktionen in excel eingeben?
AW: Zufallsgenerator ohne Doppelte
Andreas
erich.. ich habs getestet .. es geht ... kannst du mir noch an hand deines codes kurz sagen
- wieso es geht
- wo man es einstellt wieviele zeilen bzw. unterschiedliche zahlen man will
- wo man festlegt wie das format aussieht.. also ob die 900 davor steht, oder ob 90 davor oder 800.
vielen dank im voraus
Anzeige
AW: Zufallsgenerator ohne Doppelte
Andreas
noch was erich: ist in dem code festgelegt, dass keine zwei zahlen genau hintereinander erscheinen können? wenn ja in welcher zeile ist das ausgeschlossen?
ein paar Antworten
Erich
Hi Andreas,
teilweise haben sich deine Fragen wohl schon schnell von selbst erledigt...
Die Zeile, mit der Dubletten vermieden werden, ist
If Not arrOK(iLosNr) Then arrLos(ii) = iLosNr: arrOK(iLosNr) = True
Hilft dir das?
Zu deinen Frage davor:
- wieso es geht
Ja, was soll man darauf antworten? Weil keine Fehler im Code sind?
- wo man es einstellt wieviele zeilen bzw. unterschiedliche zahlen man will
Ist denn nicht klar, dass das die 5000 ist (kommt 2 mal im Code vor).
- wo man festlegt wie das format aussieht.. also ob die 900 davor steht, oder ob 90 davor oder 800
Das mit der 9 davor hat NICHTS mit Format zu tun.
Da wird einfach 9000000 zu jeder Zufallszahl addiert.
Bei "Excel gut - VBA nein" sollte dir eigentlich die Formellösung näher liegen.
Bekomme ich noch eine Antwort auf meinen Post von gestern, 20:08:10 Uhr
Kopieren einer Formel in mehrere Zellen
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: ein paar Antworten
Andreas
guten tag erich, was noch offen ist: mit deiner methode kann es vorkommen, dass zwei zahlen direkt aufeinander erscheinen. läßt sich das noch vermeiden oder ist das einfach so?
das verstehe ich nicht ...
Erich
Hi Andreas,
deine Frage verstehe ich nicht: "kann es vorkommen, dass zwei zahlen direkt aufeinander erscheinen"
Was meinst du damit genau? Stehen bei dir zwei gleiche Zahlen untereinander?
Das kann eigentlich nicht sein. Wenn doch, wäre ich dir für eine Beispielmappe mit dem Fehler dankbar.
Das Makro schreibt 5000 Zahlen, alle direkt untereinander, in eine Tabelle.
Bei diesen 5000 Zahlen gibt es keine Doppelten (Dubletten). Das hatte ich dir geschrieben:
Die Zeile, mit der Dubletten vermieden werden, ist
If Not arrOK(iLosNr) Then arrLos(ii) = iLosNr: arrOK(iLosNr) = True
Hilft dir das?
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: das verstehe ich nicht ...
Andreas
ich meinte ich möchte keine zwei aufeinanderfolgenden zahlen untereinander haben sondern verschieben:
z B.
900004810
900003474
900002111
so ist es richtig. aber ab und zu kommt es vor, dass
900004810
900004811
steht. ich wollte wissen ob es ne möglichkeit gibt die verteilung dahingehend zu erweitern, dass bei den zaheln in der zeile mindestens der wert 2 dazwischen sein muss und nicht nur 1.
Anzeige
Zufall ist Zufall
Erich
Hi Andreas (eine Anrede schadet nicht und kostet wenig),
ich antworte trotzdem noch mal.
Warum willst du dem Zufall ins Handwerk pfuschen? Aus optischen Gründen?
Die Anordnung der 5000 Zahlen wäre dann nicht mehr zufällig!
Bei Lotto kann es auch sein, dass 1 2 3 4 5 6 die sechs richtigen sind.
Diese ist nicht ebenso wahrscheinlich wie jede andere Kombination.
Wenn eine Konstellation der Art
900004810
900004811
nicht erlaubt sein soll, wäre dann die folgende Konstellation ok?
900004811
900004810
Um das Problem noch ein klein wenig zu verdeutlichen: Bei 5000 Zahlen kann es vorkommen,
dass die ersten 4998 deine Bedingungen erfüllen.
Zufällig bleiben noch die beiden Zahlen 900004811 und 900004810 übrig.
Jetzt müsste man eine davon wohl bei den 4998 Zahlen davor unterbringen,
ohne dass deine Bedingungen dann verletzt werden.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort (Dies ist ein Gruß.)
Anzeige
AW: Zufall ist Zufall
Andreas
dachte es gibt vielleicht ne möglichkeit .. das hat nicht nur optische gründe warum zwei aufeinander folgende zahlen nicht sein dürfen. aber ich habe mir jetzt damit beholfen, dass ich sie raussuche und dann mit der hand ändere .. sind nicht so viele.
also thema "zufallszahlen" damit erledigt
Anzeige
(eine Anrede schadet nicht und kostet wenig
robert
hi,
das hast du wieder nicht gelesen-oder?
gruß
robert
AW: Zufallsgenerator ohne Doppelte
Original
Hi,
dass einem Genie wie mir sowas passiert.
mfg Kurt
5000 zufällige Zahlen ohne Duplikate
FP
Hallo,
da der Wertebereich 9.000.000 bis 9.999.999 sehr groß ist, funktioniert das z.B. auch so
in A1
=ZUFALLSBEREICH(9000000;9000999)
in A2
=A1+ZUFALLSBEREICH(2;(9999999-A1)/(5001-ZEILE()))
bis A5000 nach unten ziehen
Erfolg: 5000 unterschiedliche Zahlen, aufsteigend sortiert mit Mindestabstand 2
Das wolltest Du doch, oder?
Servus aus dem Salzkammergut
Franz
Anzeige
AW: 5000 zufällige Zahlen ohne Duplikate
Andreas
hallo fraunz, "zufallsbereich" funktioniert bei mir nicht, ich hab es so eingegeben wie du geschrieben hast
=ZUFALLSBEREICH() ist eine AddIn-Funktion
NoNet
Hallo Andreas,
Die Funktion =ZUFALLSBEREICH() ist vor Excel 2007 keine Excel Standard-Funktion sondern eine Funktion aus den Analyse-Tools. Dieses AddIn kannst Du per "Extras - AddIns-Manager" aktivieren.
Falls Du eine englische/internationale Excel-Version verwendest, nennt sich das AddIn "Analysis ToolPak" und die Funktion =RANDBETWEEN().
Gruß, NoNet
Anzeige
..glaube nicht, lt.Andreas Antwort..
robert
Hi Franz,
..an mich sollen es die zahlen 1-5000 sein
gruß
robert
AW: ..glaube nicht, lt.Andreas Antwort..
Andreas
stimmt robert... es soll 1 - 5000 sein und die so angeordnet dass nie weniger als 2 als wert zwischen den zahlen sind
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Zufallszahlen mit Excel erstellen und verwalten


Schritt-für-Schritt-Anleitung

  1. Zufallszahlen generieren:

    • In Zelle A1 kannst du folgende Formel eingeben, um eine siebenstellige Zahl zu erstellen, die mit einer 9 beginnt:
      =ZUFALLSBEREICH(9000000;9999999)
    • Ziehe die Formel von A1 bis A5000 nach unten, um 5000 zufällige Zahlen zu generieren.
  2. Dubletten vermeiden:

    • Um sicherzustellen, dass jede Zahl nur einmal vorkommt, kannst du die Formel in A2 anpassen:
      =9000000 + GANZZAHL(ZUFALLSZAHL() * 1000000)
    • Kopiere diese Formel ebenfalls bis A5000.
  3. Überprüfung der Einzigartigkeit:

    • Um die Anzahl der unterschiedlichen Zahlen zu zählen, kannst du in Zelle C2 die folgende Formel verwenden:
      =SUMME(1/ZÄHLENWENN(A2:A5001;A2:A5001))
    • Bestätige diese Formel mit Strg + Shift + Enter.

Häufige Fehler und Lösungen

  • Fehlerhafte Anzahl an Zahlen: Wenn du weniger als 5000 unterschiedliche Zahlen erhältst, könnte das an der Wahrscheinlichkeit von Dubletten liegen. Achte darauf, dass du die Formeln korrekt eingegeben hast.
  • Falsches Format: Wenn die Zahlen nicht wie gewünscht formatiert sind, überprüfe die Formel und stelle sicher, dass der Zahlenbereich korrekt ist.

Alternative Methoden

  • VBA zur Generierung von Zufallszahlen: Wenn du mit VBA vertraut bist, kannst du das folgende Makro verwenden, um 5000 unterschiedliche Zufallszahlen zu generieren:
    Sub Zufall()
       Dim i As Integer
       Application.ScreenUpdating = 0
       Cells(1, 1) = Int(9000000 + Rnd * 1000000)
       For i = 2 To 5000
           Do
               Cells(i, 1) = Int(9000000 + Rnd * 1000000)
           Loop Until Cells(i, 1) <> Cells(i - 1, 1)
       Next
       Application.ScreenUpdating = -1
    End Sub

Praktische Beispiele

  • Zufällige Auswahl aus einer Liste: Verwende die Funktion =ZUFALLSBEREICH(1;ANZAHL(A:A)), um zufällig einen Index aus einer Liste zu wählen.

  • Zahlen zufällig anordnen: Wenn du eine Liste von Zahlen hast und diese zufällig sortieren möchtest, kannst du eine Hilfsspalte mit =ZUFALLSZAHL() verwenden und dann nach dieser Spalte sortieren.


Tipps für Profis

  • Zufallszahlen für speziellen Bereich: Um nur siebenstellige Zahlen zuzulassen, stelle sicher, dass die Formeln den richtigen Bereich abdecken.
  • Zufallsgenerator für Buchstaben und Zahlen: Um zufällige Zeichenfolgen zu erstellen, kannst du eine Kombination aus ZUFALLSBEREICH und CHAR verwenden.

FAQ: Häufige Fragen

1. Wie kann ich sicherstellen, dass keine zwei Zahlen hintereinander gleich sind? Mit VBA kannst du sicherstellen, dass die generierten Zufallszahlen nicht direkt aufeinander folgen.

2. Was ist der Unterschied zwischen ZUFALLSBEREICH und RANDBETWEEN? ZUFALLSBEREICH ist eine Funktion in Excel 2007 und höher, während RANDBETWEEN eine Standardfunktion in älteren Versionen ist. Stelle sicher, dass das Analyse-Tool aktiviert ist, um ZUFALLSBEREICH verwenden zu können.

3. Wie kann ich einen Zufallsbereich für nur siebenstellige Zahlen erstellen? Durch die Verwendung von ZUFALLSBEREICH(9000000;9999999) stellst du sicher, dass alle generierten Zahlen siebenstellig und mit 9 beginnen.

4. Kann ich mit Excel auch Zufallszahlen aus anderen Bereichen generieren? Ja, mit der Funktion ZUFALLSBEREICH kannst du jeden gewünschten Bereich definieren, um Zufallszahlen zu generieren.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige