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 ExcelExcel 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. Вы также можете просмотреть наши другие предлагаемые статьи -
- Написать текстовый файл в Excel VBA
- Генерация случайных чисел в Excel
- Объявление переменных VBA Excel
- Ведущие нули Excel (примеры)