Einführung in die VBA-Zufallszahl

In Excel haben wir eine Funktion namens RAND, die zur Erzeugung der Zufallszahlen verwendet wird. So wie wir RND- Funktion in VBA haben, die zur Erzeugung von Zufallszahlen verwendet wird. Die RND-Funktion generiert Zahlen, die größer als 0, aber kleiner als 1 sind.

Syntax der Zufallszahl in Excel VBA

Die Syntax für die Zufallszahlenfunktion Excel VBA lautet wie folgt:

Wir können in der obigen Syntax der RND-Funktion sehen, dass wir nur eine einzelne Zahl als Eingabe verwenden können.

Wir geben die Eingabe in der RND-Funktion auf die folgenden drei Arten ein.

  1. Wenn wir eine Zahl <0 angeben, wird jedes Mal, wenn wir den Code ausführen, dieselbe Zahl generiert.
  2. Wenn wir eine Zahl mit 0 angeben, wird die zuletzt generierte Zahl angezeigt.
  3. Wenn wir eine Zahl> 0 angeben, werden weiterhin verschiedene Zufallszahlen generiert. Aber es wird der Reihe nach sein.

Wie benutze ich die Excel-Zufallszahlenfunktion?

Sehen wir uns die Beispiele für Zufallszahlen in Excel VBA an.

Sie können diese Excel-Vorlage für VBA-Zufallszahlen hier herunterladen - Excel-Vorlage für VBA-Zufallszahlen

Beispiel 1 - VBA-Zufallszahl

Schritt 1: Dies können wir direkt bei VBA beantragen. Wechseln Sie dazu in das VBA-Fenster und öffnen Sie ein Modul aus dem Menü Einfügen (siehe unten).

Schritt 2: Sobald wir dies tun, erhalten wir ein Fenster mit Modulen in VBA. Schreiben Sie in diesem Modul eine Unterkategorie der VBA-Zufallszahl mit demselben Namen oder einem beliebigen Namen nach Ihrer Wahl.

Code:

 Sub RandomNumber () End Sub 

Schritt 3: Wählen Sie nun ein Wort oder Alphabet aus, definieren Sie es als Variable und weisen Sie ihm Double zu. Hier betrachten wir die Variable Dim A und geben sie Double . Die Auswahl von double anstelle von Integer ist nützlich, da Dezimalwerte zwischen 0 und 1 angezeigt werden.

Code:

 Sub RandomNumber () Dim A As Double End Sub 

Schritt 4: Als nächstes verwenden wir die oben definierte Variable A und weisen ihr eine Funktion Rnd zur Erzeugung von Zufallszahlen zu, wie unten gezeigt.

Code:

 Sub RandomNumber () Dim A As Double A = Rnd (End Sub 

Schritt 5: Wie wir im obigen Screenshot sehen können, hat die RND- Funktion die Syntax als Zahl und das wird eine einstellige Zahl sein. Hier werden wir sehen, wie das Geben einer Zahl unter 0 was erzeugt? Fügen Sie also in Klammern der RND-Funktion -1 ein, die die letzte Zahl ist, die kleiner als 0 ist.

Code:

 Sub RandomNumber () Dim A As Double A = Rnd (-1) End Sub 

Schritt 6: Um die Ausgabe zu erhalten, benötigen wir die Referenz der Zelle oder ein Meldungsfeld, in dem die Zufallszahl angezeigt wird. Fügen Sie den Befehl Msgbox des Meldungsfelds ein und weisen Sie hier die definierte Variable zu.

Code:

 Sub RandomNumber () Dim A As Double A = Rnd (-1) MsgBox A End Sub 

Schritt 7: Jetzt können wir den Code kompilieren und ausführen, indem wir auf die Wiedergabetaste unter der Menüleiste klicken. Es wird die erste Zufallszahl generiert, die kleiner als 0 ist, also 0, 2240070104599, wie unten gezeigt.

Wenn wir den Code erneut ausführen, wird er immer wieder denselben Code generieren.

Beispiel 2 - VBA-Zufallszahl

Wir haben gesehen, wie man Zufallszahlen erzeugt, die kleiner als 0 sind. Es gibt eine andere Möglichkeit, Zufallszahlen zu erhalten. In diesem Beispiel wird die Zufallszahl durch Eingabe von 0 in die RND- Funktion generiert.

Dafür verwenden wir den gleichen Code wie in Beispiel-1.

Schritt 1: Jetzt anstelle von -1 in den Klammern der RND-Funktion 0 eingeben.

Code:

 Sub RandomNumber () Dim A As Double A = Rnd (0) MsgBox A End Sub 

Schritt 2: Sie können den Code bei Bedarf kompilieren oder direkt ausführen, indem Sie die Taste F5 (Tastenkombination) drücken, um den Code auszuführen. Wir können sehen, dass die RND-Funktion dieselbe Nummer generiert hat, die generiert wurde, als wir eine Eingabe von weniger als 0 gaben. Wenn wir also 0 als Eingabe-RND-Funktion angeben, wird die zuvor generierte Nummer generiert.

Und wenn wir den Code erneut ausführen, gibt er weiterhin dieselbe Zufallszahl aus.

Beispiel # 3 - VBA-Zufallszahl

In diesem Beispiel werden wir sehen, was passiert, wenn wir einen Wert größer als 0 angeben. Wir können wählen, ob wir neuen Code schreiben möchten, oder wir können die Änderungen im Code vornehmen, den wir oben geschrieben haben. Betrachten wir den Code, den wir oben gesehen haben.

Schritt 1: Da wir eine Zahl größer als 0 testen müssen, verwenden Sie in der RND-Funktion das Leerzeichen und addieren Sie +1 für Werte größer als 1, wie unten gezeigt.

Code:

 Sub RandomNumber () Dim A As Double A = 1 + Rnd () MsgBox A End Sub 

Schritt 2: Kompilieren Sie den Code, wenn Sie möchten, und führen Sie dann den Code aus. Wir werden sehen, dass sich die generierte Zufallszahl von der zuvor generierten unterscheidet. Unten ist der Screenshot, der zeigt, dass die Zufallszahl im Bruchteil von 1, 035… .41 liegt . Welches ist größer als 0.

Wenn wir denselben Code erneut ausführen, erhalten wir immer wieder andere Zufallszahlen. Also haben wir gleich nach dem Ausführen des Codes wieder. Diesmal sind die Zufallszahlen, die wir erhalten haben, der doppelte Verstoßwert im Vergleich zu der zuvor erzeugten Zufallszahl.

Vorteile der VBA-Zufallszahl

  1. Es scheint schwierig, aber es ist einfach anzuwenden.
  2. Dies ist sehr nützlich, wenn wir daran arbeiten, zufällige Ticketnummern zu generieren.
  3. Der in Beispiel 3 gezeigte Prozess kann auf viele verschiedene Arten implementiert werden.

Dinge, an die man sich erinnern sollte

  • Dies kann über die MS Excel-Funktion auch mit dem Funktionsnamen RAND realisiert werden.
  • Wir testen zuerst Beispiel-2, bevor wir den Code von Beispiel-2 ausführen. Denn es wird tatsächlich angezeigt, welche Nummer zuvor generiert wurde.
  • Wenn Sie die RND-Funktion testen, indem Sie die Klammern leer lassen, erhalten Sie ebenfalls eine Zufallszahl.
  • Wenn wir die Variable als Ganzzahl zuweisen, erhalten wir nur ganze Zahlen, die mit 0 oder 1 identisch sind.
  • Wenn wir zweistellige Zahlen als Eingabe in die RND-Funktion verwenden, wird auch die Zufallszahl generiert.

Empfohlene Artikel

Dies ist eine Anleitung zur VBA-Zufallszahl. Hier diskutieren wir, wie Sie mit der RND-Funktion Zufallszahlen in VBA-Excel generieren können, zusammen mit praktischen Beispielen und herunterladbaren Excel-Vorlagen. Sie können auch unsere anderen Artikelvorschläge durchgehen -

  1. VBA InStr erklärt mit Beispielen
  2. VBA Integer-Datentyp
  3. So wählen Sie eine Zelle mit VBA-Code aus
  4. Transponieren Sie einen Bereich in VBA

Kategorie: