Excel VBA Рандомизировать

VBA Randomize - это функция, которая используется для создания функции случайных чисел, которая называется RND. Все мы знаем, что VBA RND используется для создания случайных чисел, которые в основном используются для выставления счетов, для поднятия номеров билетов и многих других для приложений. Здесь VBA Randomize используется для изменения начального значения, которое мы подаем для функции RND. Для лучшего понимания мы используем функцию RND для получения случайных чисел, а затем используем функцию Randomize с RND, которая даст больше разнообразных случайных чисел. Поскольку это изменяется в начальном входном значении, которым выход также изменяется. Это означает, что он сгенерирует числа в соответствии с начальным значением, заданным в функции RND, и сгенерированное число будет в том же диапазоне.

Главное, что есть в VBA Randomize - это то, что у него нет синтаксиса. Нам просто нужно использовать его вместе с функцией RND, которая имеет синтаксис для применения.

Как рандомизировать число в Excel VBA?

Ниже приведены различные примеры рандомизации числа в Excel с использованием функции VBA Rnd.

Вы можете скачать этот шаблон VBA Randomize Excel здесь - Шаблон VBA Randomize Excel

Excel VBA Randomize - Пример № 1

С помощью VBA Randomize очень легко создавать настраиваемые случайные числа. Для этого выполните следующие шаги:

Шаг 1: Перейдите в окно VBA, на вкладке меню « Вставка » выберите « Модуль», как показано ниже.

Шаг 2: Теперь напишите подкатегорию VBA Randomize или мы можем использовать любое имя для определения кода VBA.

Код:

 Sub VBA_Randomize () End Sub 

Шаг 3: Теперь определите переменную. Здесь мы рассмотрели переменную RNum как тип данных Double. Логика использования Double заключается в том, что мы получим незначительные изменения в сгенерированных случайных числах. Двойник поможет нам увидеть цифры в десятичных числах.

Код:

 Sub VBA_Randomize () Dim RNum As Double End Sub 

Шаг 4: Теперь назначьте функцию VBA RND определенной переменной RNum .

Код:

 Sub VBA_Randomize () Dim RNum As Double RNum = Rnd End Sub 

Шаг 5: Теперь, чтобы увидеть генерацию случайных чисел, мы будем использовать Debug.Print, который используется для печати сообщения.

Код:

 Sub VBA_Randomize () Dim RNum As Double RNum = Rnd Debug.Print RNum End Sub 

Шаг 6: Чтобы увидеть генерацию значения или числа, откройте Immediate Window из списка меню View. Или мы можем использовать горячую клавишу Ctrl + G, чтобы получить это окно.

Шаг 7: Теперь скомпилируйте код и запустите его, нажав на кнопку Play, расположенную под строкой меню. Мы увидим первое случайное число в ближайшем окне, как показано ниже.

И если мы запустим код снова и снова несколько раз, то увидим еще несколько случайных чисел.

Шаг 8: Теперь, если мы применяем Randomize перед функцией RND, то она изменит вход начального числа, который получала функция RND.

Код:

 Sub VBA_Randomize () Dim RNum как двойная рандомизация RNum = Rnd Debug.Print RNum End Sub 

Шаг 9: Снова запустите код несколько раз, чтобы увидеть, какие числа генерируются.

Вот как функция Randomize работает в VBA, если используется с функцией RND .

Давайте посмотрим еще один эксперимент с той же кодировкой. Теперь мы будем использовать функцию CInt с RND, которая используется для преобразования типов данных. Это означает, что он преобразует сгенерированное случайное число как Double в целые числа.

Код:

 Sub VBA_Randomize1 () Dim RNum As Double RNum = CInt (Rnd) Debug.Print RNum End Sub 

Теперь снова запустите код. Мы увидим, что теперь случайные числа генерируются как целые числа. Но значения находятся в диапазоне от 0 до 1.

Мы уже видели, что если мы продолжим использовать Double, то значения будут в диапазоне от 0 до 1. Это потому, что мы использовали Randomize вместе с функцией RND. Теперь давайте умножим функцию RND на любое число. Скажем 20.

Код:

 Sub VBA_Randomize1 () Dim RNum As Double RNum = CInt (Rnd * 20) Debug.Print RNum End Sub 

Теперь снова запустите код.

Теперь сцена изменилась. Генерируемые случайные значения больше 0, но меньше 20.

Excel VBA Randomize - Пример № 2

Есть еще один способ увидеть, как работает VBA Randomize. Мы применим некоторую математическую формулу вместе с Randomize и посмотрим, как рандомизировать помогает в генерации случайных значений. Но в этом примере мы увидим вывод в окне сообщения. Для этого выполните следующие шаги:

Шаг 1: В модуле напишите подкатегорию VBA Randomize, как показано ниже.

Код:

 Sub VBA_Randomize2 () End Sub 

Шаг 2: Рассмотрим ту же переменную, которую мы определили в последнем примере, но как Integer.

Код:

 Sub VBA_Randomize2 () Dim RNum As Integer End Sub 

Шаг 3: Теперь выберите функцию Randomize здесь, прежде чем мы начнем помещать математическую формулу.

Код:

 Sub VBA_Randomize2 () Dim RNum As Integer Randomize End Sub 

Шаг 4: Теперь рассмотрим любую математическую формулу, такую ​​как сложение, вычитание согласно вашему требованию, как показано ниже.

Код:

 Sub VBA_Randomize2 () Dim RNum As Integer Randomize RNum = Int ((300 - 200 + 1) End Sub 

Шаг 5: Теперь используйте функцию RND, как показано ниже.

Код:

 Sub VBA_Randomize2 () Dim RNum As Integer Randomize RNum = Int ((300 - 200 + 1) * Rnd + 200) End Sub 

Вы заметили, что мы использовали большую часть математического выражения, которое обычно используется.

Шаг 6: Теперь используйте Msgbox с определенной переменной, чтобы увидеть сгенерированные случайные числа.

Код:

 Sub VBA_Randomize2 () Dim RNum As Integer Randomize RNum = Int ((300 - 200 + 1) * Rnd + 200) MsgBox RNum End Sub 

Шаг 7: Теперь запустите код. Мы получим случайное число как 234. Это потому, что число умножается на (300-200 + 1), а затем прибавляется к 200. Это означает, что случайное число имеет гораздо меньшую природу и из-за используемых математических выражений это идет как 234.

И мы снова запускаем код, он выдаст нам сообщение как 294 .

Плюсы Excel VBA Рандомизировать

  • Мы можем генерировать любое случайное число между любыми диапазонами, которые мы хотим.
  • Поскольку диапазон становится ограниченным, но все еще нет никаких ограничений на генерацию случайных чисел.
  • Мы можем ограничить диапазон генерации случайных чисел, который будет больше 0.

То, что нужно запомнить

  • Рандомизация также может использоваться с различными функциями. Но использование этого с функцией RND дает результат, который нам нужен.
  • Randomize дает случайные числа от 0 до 1, если используется отдельно с RND.
  • Если мы используем любое другое число или математическое выражение с RND, тогда Randomize будет сгенерирован, случайные числа между наибольшим значением могут быть сгенерированы.
  • После этого сохраните файл в формате Macro Enable Excel.
  • Рандомизацию можно использовать там, где необходимо генерировать случайные числа, но между входными значениями начального диапазона.

Рекомендуемые статьи

Это руководство по VBA Randomize. Здесь мы обсудим, как рандомизировать число в Excel с использованием кода VBA, а также с практическими примерами и загружаемым шаблоном Excel. Вы также можете просмотреть наши другие предлагаемые статьи -

  1. Написать текстовый файл в Excel VBA
  2. Генерация случайных чисел в Excel
  3. Объявление переменных VBA Excel
  4. Ведущие нули Excel (примеры)

Категория: