Beispiele für die ZUFALLSBEREICH-Funktion in Excel, VBA & G-Sheets
Download the example workbook
In diesem Tutorial zeigen wir Ihnen, wie Sie die Funktion ZUFALLSBEREICH in Excel und Google Sheets verwenden können, um eine Zufallszahl zwischen zwei Zahlen zu berechnen.
Die ZUFALLSBEREICH-Funktion in Excel verwenden
Die ZUFALLSBEREICH-Funktion erzeugt eine Zufallszahl (nur ganze Zahlen) zwischen zwei Zahlen.
Diese Formel erzeugt eine Zufallszahl zwischen 1 und 100:
=ZUFALLSBEREICH(B3;C3)
Hinweis: ZUFALLSMATRIX ist eine neue Funktion in Versionen ab Excel 2019, die die ZUFALLSBEREICH-Funktion ersetzt. Wenn Sie jedoch nicht über die neueste Version verfügen oder die Datei an Personen senden müssen, die diese noch nicht haben, können Sie aus Abwärtskompatibilitätsgründen weiterhin die ZUFALLSBEREICH-Funktion verwenden.
ZUFALLSMATRIX erzeugt nicht nur Zufallszahlen, die Sie spezifizieren, sondern erlaubt Ihnen auch zu entscheiden, in wie viele Zeilen und Spalten die Zufallszahlen abgelegt werden sollen und Sie können sogar wählen, ob Sie ganze Zahlen oder Dezimalzahlen wünschen.
Wenn Ihre Excel-Version von 2003 oder älter ist, müssen Sie stattdessen ZUFALLSZAHL verwenden.
=ZUFALLSZAHL()
Dezimalzahlen innerhalb eines Bereichs erzeugen
Wie bereits erwähnt, ist dies mit ZUFALLSMATRIX und ZUFALLSZAHL leicht möglich. Mit ZUFALLSBEREICH müssen Sie es so machen:
=ZUFALLSBEREICH($B$3*10;$B$6*10)/10
Sie müssen zuerst entscheiden, wie viele Dezimalstellen Sie haben möchten. In dem obigen Beispiel ist es eine Dezimalstelle. Um eine Dezimalstelle zu erhalten, muss man eine ganze Zahl durch 10 teilen. Daher lautet die Formel im Wesentlichen:
=ZUFALLSBEREICH(Untere_Zahl x 10; Obere_Zahl x 10) / 10
Zufällige Datums- oder/und Zeitangaben generieren
Wenn Sie wissen, wie Datums- und Zeitangaben in Excel gespeichert werden, ist die Logik ähnlich wie die oben beschriebene, da diese als Zahlen gespeichert werden. Einfach:
=ZUFALLSBEREICH($B$3;$B$6)
Die Zeit ist ähnlich, nur dass sie als Dezimalzahl und nicht als Ganzzahl angegeben wird. Ein Tag hat 24 Stunden. Multiplizieren Sie also die untere und obere Zahl mit 24 und teilen Sie die resultierende Zufallszahl durch 24, um eine Zufallsstunde zu erhalten.
=ZUFALLSBEREICH($B$3*24;$B$6*24)/24
Wenn Sie auch Zufallsminuten wünschen, verwenden Sie 1440 (24 Stunden x 60 Minuten) anstelle von 24.
=ZUFALLSBEREICH($B$3*1440;$B$6*1440)/1440
Um beides zusammen zu haben, summieren Sie die beiden einfach:
=ZUFALLSBEREICH($B$3;$B$6)+ZUFALLSBEREICH($C$3*1440;$C$6*1440)/1440
Ein Zufallsfeld abrufen
Wenn Sie einfach nur ganze Zufallszahlen abrufen wollen, ist ZUFALLSBEREICH an sich perfekt. In den meisten Fällen wollen wir jedoch ein Zufallsfeld abrufen. Um zum Beispiel einen zufälligen Mitarbeiter in B3:B7 abzurufen, können Sie eine ZUFALLSBEREICH-Funktion verwenden, um eine Zeilennummer abzurufen und INDEX, um den Wert aus der Zeile abzurufen:
=INDEX(B3:B7;RANDBETWEEN(1;5))
Ein Zufallsfeld ohne Duplikate abrufen
Um sicherzustellen, dass es keine Duplikate gibt, können Sie diese Array-Formel verwenden:
{=INDEX($B$3:$B$7;KGRÖSSTE(WENN(ISTNV(
VERGLEICH($B$3:$B$7;D$2:D2;0));ZEILE($B$3:$B$7);0);
ZUFALLSBEREICH(1;5-ZEILEN(D$3:D3)+1))-ZEILE($B$3)+1)}
Hinweis: Tippen Sie die Klammern ({}) nicht ein. Drücken Sie STRG + UMSCHALTTASTE + ENTER, um die Formel einzugeben.
Im obigen Beispiel erzeugt ZUFALLSBEREICH zunächst Zahlen zwischen 1 und (5 – ZEILEN(D$3:D3) + 1). Wenn Sie diese Formel nach unten kopieren, schrumpft der Zufallsbereich von (1 bis 5) auf (1 bis 1). Auf diese Weise werden Duplikate vermieden.
Die Funktionen WENN + ISTNV + VERGLEICH + ZEILE werden verwendet, um nur eine Zeilennummer, die noch nicht in Verwendung ist, zurückzugeben.
Die ZUFALLSBEREICH-Funktion in Google Sheets
Die ZUFALLSBEREICH-Funktion funktioniert in Google Sheets auf die gleiche Weise.
ZUFALLSBEREICH-Beispiele in VBA
Sie können die ZUFALLSBEREICH-Funktion auch in VBA verwenden. Geben Sie Folgendes ein:
Application.WorksheetFunction.Randbetween(Untere_Zahl,Obere_Zahl)
Die Funktionsargumente (Untere_Zahl usw.) können Sie entweder direkt in die Funktion eingeben oder Variablen definieren, die Sie stattdessen verwenden.
Ausführen der folgenden VBA-Anweisungen:
Range("C2") = Application.WorksheetFunction.RandBetween(Range("A2"), Range("B2"))
Range("C3") = Application.WorksheetFunction.RandBetween(Range("A3"), Range("B3"))
Range("C4") = Application.WorksheetFunction.RandBetween(Range("A4"), Range("B4"))
führt zu den folgenden Ergebnissen:
Die dritte Anweisung löst einen Fehler aus, da ZUFALLSBEREICH keine negativen Zahlen als Parameter akzeptiert: