Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Random Zahlen, Zahl nur einmal

Random Zahlen, Zahl nur einmal
10.01.2017 11:49:10
Max2
Hallo Leute,
ich möchte einen Bereich mit Zahlen zwischen 1 und 9 Random befüllen.
Die Zahl soll in dem Bereich aber nicht zwei mal vorkommen dürfen.
Könnt ihr mir helfen?
Für die Random Zahlen nehme ich einfach: i = Int(9 * Rnd) + 1
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Random Zahlen, Zahl nur einmal
10.01.2017 12:20:02
ransi
Hallo,
Warum nicht einfach so?
Tabelle1

 AB
10,720079044
20,979455381
30,185009867
40,439893936
50,670615015
60,011744989
70,019253298
80,752420722
90,724405033

Formeln der Tabelle
ZelleFormel
A1=ZUFALLSZAHL()
B1=RANG(A1;$A$1:$A$9)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
In B1:B9 stehen deine Zahlen.
ransi
Anzeige
AW: Random Zahlen, Zahl nur einmal
10.01.2017 13:27:51
Daniel
Hi
erstelle ein Array mit den neun zulässigen werten.
vertausche in einer Schleife jedes Arryelement mit einem anderen zufällig ausgewähltem Arryelement (Index per RND erstellen)
damit entsteht eine zufällige Reihenfolge.
greife dann die Elemente nacheinander von oben nach unten ab.
kleiner Tipp:
zufällige Ganzzahlen kannst du auch so ermitteln:
Worksheetfunction.RandBetween(untere Grenze, obere Grenze)

das erspart dir das Umrechnen und braucht auch kein Randomize.
Gruß Daniel
Anzeige
Gelöst
10.01.2017 17:08:20
Max2
Danke hat geklappt.
;

Forumthreads zu verwandten Themen

Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Zufällige Zahlen in Excel ohne Duplikate generieren


Schritt-für-Schritt-Anleitung

Um in Excel zufällige Zahlen zwischen 1 und 9 zu generieren, ohne dass eine Zahl doppelt vorkommt, kannst du folgende Schritte ausführen:

  1. Zahlen in einer Spalte eintragen: Trage in die Zellen A1 bis A9 die Zahlen 1 bis 9 ein.

  2. Zufallszahlen erzeugen:

    • In Zelle B1 gib die Formel ein: =ZUFALLSZAHL()
    • Ziehe die Formel bis B9 herunter, um für jede Zahl in Spalte A eine zufällige Zahl zu erzeugen.
  3. Ränge festlegen:

    • In Zelle C1 gib die Formel ein: =RANG(B1;$B$1:$B$9)
    • Ziehe diese Formel auch bis C9 herunter. Diese gibt dir den Rang der zufälligen Zahlen.
  4. Zufällige Reihenfolge der Zahlen abrufen:

    • In D1 gib die Formel ein: =INDEX($A$1:$A$9; C1)
    • Ziehe diese Formel bis D9 herunter. Jetzt hast du die Zahlen in einer zufälligen Reihenfolge.

Mit dieser Methode erhältst du einen Excel-Zufallsbereich, in dem jede Zahl nur einmal vorkommt.


Häufige Fehler und Lösungen

  • Fehler: Die generierten Zahlen sind nicht im gewünschten Bereich.

    • Lösung: Stelle sicher, dass du die richtigen Formeln verwendest. ZUFALLSZAHL() ergibt Werte zwischen 0 und 1, somit musst du auf die Zahlen in Spalte A zugreifen.
  • Fehler: Duplikate in den Zufallszahlen.

    • Lösung: Überprüfe, ob die Ränge korrekt zugeordnet sind. Wenn die RANG-Funktion nicht richtig angewendet wird, können sich Duplikate einschleichen.

Alternative Methoden

Eine weitere Möglichkeit, um in Excel eine zufällige Zahl zwischen 1 und 10 oder einem anderen Bereich zu generieren, ist die Verwendung von VBA:

Sub Zufallszahlen()
    Dim i As Integer
    Dim ZufallsArray(1 To 9) As Integer
    Dim temp As Integer
    Dim j As Integer

    ' Initialisiere das Array
    For i = 1 To 9
        ZufallsArray(i) = i
    Next i

    ' Mische das Array
    For i = 1 To 9
        j = Int((9 - 1 + 1) * Rnd + 1)
        temp = ZufallsArray(i)
        ZufallsArray(i) = ZufallsArray(j)
        ZufallsArray(j) = temp
    Next i

    ' Ausgabe der Zahlen in Zellen
    For i = 1 To 9
        Cells(i, 1).Value = ZufallsArray(i)
    Next i
End Sub

Mit diesem VBA-Skript kannst du sicherstellen, dass jede Zahl nur einmal vorkommt.


Praktische Beispiele

  • Beispiel 1: Generiere eine zufällige Zahl zwischen 1 und 20.

    • Anpassen der Formeln für den Bereich: Ändere die Eingabewerte in Zelle A1 bis A20.
  • Beispiel 2: Wähle eine zufällige Zahl zwischen 1 und 10.

    • Verwende die Formel =ZUFALLSBEREICH(1;10) in einer Zelle (z.B. E1).

Tipps für Profis

  • Nutze die RANDARRAY-Funktion (ab Excel 365) für eine effizientere Lösung:
    =SORTIEREN(SEQUENZ(9;1;1;1);ZUFALLSBEREICH(1;9;9))
  • Diese Funktion erstellt eine Reihe von Zufallszahlen in aufsteigender Reihenfolge und bietet somit eine einfache Möglichkeit, zufällige Zahlen ohne Duplikate zu generieren.

FAQ: Häufige Fragen

1. Wie kann ich sicherstellen, dass ich eine zufällige Zahl zwischen 1 und 2 erhalte? Du kannst die Formel =ZUFALLSBEREICH(1;2) verwenden, um zufällige Ganzzahlen zwischen 1 und 2 zu generieren.

2. Gibt es eine Möglichkeit, nur einmal Werte zu generieren, ohne VBA? Ja, indem du die RANG-Funktion mit der ZUFALLSZAHL-Funktion kombinierst, kannst du eine Liste von einzigartigen Zufallszahlen erstellen, wie im Schritt-für-Schritt-Anleitung beschrieben.

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