Vba: jak używać randbetween do generowania liczb losowych


Możesz użyć metody RandBetween w VBA, aby wygenerować losową liczbę całkowitą pomiędzy dwiema określonymi wartościami.

Oto dwa popularne sposoby wykorzystania tej metody w praktyce:

Metoda 1: Użyj RandBetween do wygenerowania losowej liczby całkowitej

 SubGenerateRandomInteger ()
Range(" A1 ") = WorksheetFunction.RandBetween(1, 100)
End Sub

To konkretne makro wygeneruje losową liczbę całkowitą od 1 do 100 w komórce A1 .

Metoda 2: Użyj RandBetween do wygenerowania wielu losowych liczb całkowitych

 Sub GenerateMultipleRandomIntegers()

    Dim i As Integer
    
    For i = 1 To 10
        Range(" A " & i) = WorksheetFunction.RandBetween(1, 100)
    Next i
    
End Sub

To konkretne makro wygeneruje losową liczbę całkowitą od 1 do 100 dla każdej komórki w zakresie A1:A10 .

Poniższe przykłady pokazują, jak zastosować każdą z tych metod w praktyce.

Przykład 1: Użyj RandBetween do wygenerowania losowej liczby całkowitej

Załóżmy, że chcemy wygenerować losową liczbę z zakresu od 1 do 100 i umieścić wynik w komórce A1 naszego bieżącego arkusza w Excelu.

W tym celu możemy utworzyć następujące makro:

 SubGenerateRandomInteger ()
Range(" A1 ") = WorksheetFunction.RandBetween(1, 100)
End Sub

Kiedy uruchomimy to makro, otrzymamy następujące dane wyjściowe:

Zauważ, że komórka A1 zawiera wartość 36 .

Należy pamiętać, że za każdym razem, gdy uruchamiamy to makro, może zostać wygenerowana inna wartość całkowita z zakresu od 1 do 100.

Przykład 2: Użyj RandBetween do wygenerowania wielu losowych liczb całkowitych

Załóżmy, że zamiast tego chcemy wygenerować losową liczbę całkowitą od 1 do 100 dla każdej komórki w zakresie A1:A10 .

W tym celu możemy utworzyć następujące makro:

 Sub GenerateMultipleRandomIntegers()

    Dim i As Integer
    
    For i = 1 To 10
        Range(" A " & i) = WorksheetFunction.RandBetween(1, 100)
    Next i
    
End Sub

Kiedy uruchomimy to makro, otrzymamy następujące dane wyjściowe:

Należy zauważyć, że każda komórka w zakresie A1:A10 zawiera losową liczbę całkowitą z zakresu od 1 do 100.

Uwaga : Pełną dokumentację metody RandBetween VBA można znaleźć tutaj .

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w VBA:

VBA: Jak pisać funkcje ŚREDNIA.JEŻELI i ŚREDNIA.JEŻELI
VBA: Jak pisać funkcje SUMIF i SUMIFS
VBA: Jak pisać funkcje COUNTIFS i COUNTIFS

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *