Ganzzahlige Zufallszahlen eines Zahlenbereichs
Beschreibung
Die Funktion ZUFALLSBEREICH() gibt eine ganze Zufallszahl aus dem festgelegten Bereich zurück. Zur Funktion ZUFALLSZAHL() gibt es zwei entscheidende Unterschiede: Die Rückgabe ist stets eine ganze Zahl und es müssen 2 Argumente eingegeben werden:
Syntax
=ZUFALLSBEREICH(AnfangZahl; EndeZahl)
Argument(e)
Beide Argumente müssen eingegeben werden, sind nicht optional. AnfangZahl ist die kleinste ganze Zahl, welche zurück gegeben werden kann. EndeZahl ist entsprechend die größte ganze Zahl, die zurück gegeben werden kann. Beide Werte sind einschließlich. Auch das unterscheidet diese Funktion von ZUFALLSZAHL(). Beide Parameter müssen Zahlen sein oder durch Excel in einen numerischen Wert umgewandelt werden können. AnfangZahl sowie EndeZahl können direkt in die Funktion eingegeben werden, ein Zellbezug oder das Ergebnis einer weiteren Funktion sein. Handelt es sich bei den Argumenten nicht um eine Ganzzahl, so wird jeweils zur nächsten Ganzzahl aufgerundet.
Weiteres
Beispiel: Möchten Sie die Lottozahlen (6 aus 49) von Excel bestimmen lassen, dann geben Sie beispielsweise in A1 folgende Formel ein: =ZUFALLSBEREICH(1; 49) und kopieren Sie diese Formel bis A6 runter. Für eine neue „Ziehung” brauchen Sie dann nur noch F9 zu drücken, um eine Neuberechnung des Blattes zu erreichen. Es darf aber hierbei nicht verschwiegen werden, dass eine „gezogene” Zahl doppelt vorkommen kann.
Hinweise
- AnfangZahl muss kleiner sein als EndeZahl. Ist mindestens eines der Argumente eine negative Zahl, dann ist darauf besonders zu achten.
- Nachkommastellen in den Argumenten werden abgeschnitten.
- Es können auch kalendarische Daten und Uhrzeiten als Parameter verwendet werden.
- Funktions-Ergebnisse, welchen einen numerischen Wert ergeben, werden akzeptiert.
- Leere Zellen (als Argument verwendet) werden als 0 (null) gewertet.
#NAME! – Fehler
Wenn Sie solch eine Fehlermeldung erhalten, dann ist irgend etwas „faul im Staate Dänemark” 😉 . Überprüfen Sie als allererstes, ob Sie den Funktionsnamen auch korrekt geschrieben haben. Groß- Kleinschreibung ist dabei nicht relevant, aber jeder einzelne Buchstabe ist wichtig. Wenn Sie eine Excel-Version ab 2007 verwenden, wird in solchen Fällen hier der Fehler zu suchen sein.
Anders sieht das schon aus, wenn Sie eine Excel-Version bis 2003 einsetzen. Da ist diese Funktion standardmäßig nicht im direkten Zugriff. Vermutlich aus Gründen der Performance hat Microsoft diese und auch weitere Funktionen ausgelagert. Um diese zu aktivieren, gehen Sie so vor: Menü Extras | Add-Ins… | Analyse-Funktionen und diese per Häkchen setzen aktivieren. Dann steht Ihnen diese Funktion (neben weiteren) auch in vollem Umfang zur Verfügung.
Wollen oder müssen Sie auf dieses Add-In verzichten, dann gibt es immer noch die klassische Formel-Lösung. Um wiederum eine ganzzahlige Zufallszahl, beispielsweise 1..49 für das Lotto zu generieren, geben Sie diese Formel ein:
=KÜRZEN(ZUFALLSZAHL() * 49; 0) + 1
und diese Formel kopieren Sie bis zur 6. Zeile nach unten.
Das bedarf gewiss einer Erklärung, wenn Sie nicht ziemlich tief in der Formel-Welt des Excel verwurzelt sind. Also, per ZUFALLSZAHL() wird eine zufällige Zahl zwischen 0 und 1 berechnet. Diese wird mit dem Höchstwert des Wunschbereichs (hier: 49) multipliziert. Dieses Ergebnis wird auf null Nachkommastellen gekürzt, da ja eine Zahl ohne Nachkommastellen gefordert ist. Dann wird noch die 1 als tiefst mögliche Zahl dazu addiert. Aber leider ist das nur die halbe Wahrheit, denn das Ganze gilt in exakt dieser Form nur dann, wenn die Zählung mit 1 beginnt.
Ein weiteres Beispiel, um das Ganze besser zu verdeutlichen und auch den immer funktionierenden Weg aufzuzeigen. Sie wollen eine Zufallszahl im Bereich 123 bis 234 generieren. Die Grenzwerte sind jeweils inklusive. Der eben vorgestellten Logik folgend geben Sie diese Funktion ein:
=KÜRZEN(ZUFALLSZAHL() * 234; 0) + 123
Und das geht schlicht und einfach schief. Bei einer Kontrolle werden Sie rasch feststellen, dass da einige „Ausreißer” dabei sind. Die korrekte Formel wäre:
=KÜRZEN(ZUFALLSZAHL() * (234 - 123 + 1); 0) + 123
Auf den ersten Blick ist das vielleicht irritierend. Ganz allgemein ausgedrückt funktioniert die Formel so, wenn AnfangZahl für den kleinsten und EndeZahl für den größten möglichen zu berechnenden Wert steht:
=KÜRZEN(ZUFALLSZAHL()*(AnfangZahl-EndeZahl+1); 0)+AnfangZahl
Das entspricht dann exakt der Funktion ZUFALLSBEREICH().