Функция VBA RoundUp
В Excel у нас есть функция округления, которая используется для округления чисел до выбранных десятичных знаков. Предположим, что есть число, которое немного похоже на это 8.5036, и мы хотим округлить его до двух чисел. На самом деле в Excel есть два метода: один - круглая кнопка в Excel, как показано на скриншоте ниже, а другой - функция округления. Скриншот для круглой кнопки выглядит следующим образом.
Как объяснено выше, мы можем округлять числа в Excel с возможностью увеличения и уменьшения десятичной или округленной функции. Аналогично, в VBA у нас также есть функция округления, которая используется для округления чисел до определенных десятичных знаков. Ранее функция округления в Excel использовала следующие аргументы.
В Excel : круглый (число, количество цифр после десятичной дроби)
Число - это число, которое мы хотим округлить, а число цифр - это количество цифр, которое мы хотим округлить. Аналогично, обзор Excel VBA аналогичен функции округления Excel. Посмотрите на это ниже.
В VBA : раунд (число, (количество цифр после десятичной дроби))
Выше приведена функция округления в VBA, но функция округления несколько отличается. Однако синтаксис для функции округления в VBA и функции округления аналогичен. Это следующим образом,
В VBA Roundup есть:
Сводка новостей (Число, (Количество цифр после десятичной дроби))
Функция округления похожа на функцию округления в VBA excel, но отличие состоит в том, что она всегда округляет число для заданных аргументов. Теперь давайте разберемся с аргументами, которые мы предоставляем для функции округления.
Мы знаем, что число - это число, которое мы предоставляем в качестве ввода, которое будет округлено. Количество цифр может быть в трех сценариях следующим образом:
- Если количество предоставленных цифр больше нуля, то число округляется до указанного десятичного знака.
- Если количество цифр указано в качестве входных данных, равных нулю, то число округляется до ближайшего целого числа.
- Теперь, если количество цифр, которое вводится как ввод, меньше нуля, то число округляется до левой десятичной точки.
Функция RoundUp работает очень похоже на функцию листа Excel. Теперь имейте в виду, поскольку он имеет десятичные значения для вывода, который он возвращает в двойном виде. Это будет понятно с несколькими примерами. Мы изучим все три аспекта функции округления, т. Е. Меньше 0, равное 0 и больше 0 в примерах. Для наших примеров мы возьмем ввод от пользователя и сводку и отобразим ее.
Как округлить с помощью VBA?
Давайте посмотрим на примеры RoundUp в Excel VBA.
Вы можете скачать этот шаблон VBA RoundUp Excel здесь - Шаблон VBA RoundUp ExcelПример № 1 - обзор VBA
Давайте начнем с количества предоставленных цифр меньше 0 и посмотрим, как всплывают результаты.
Шаг 1: Чтобы начать с VBA, мы должны быть в VB Editor, мы можем сделать это, нажав на вкладку разработчика, а затем на Visual Basic, как показано на скриншоте ниже,
Шаг 2: Теперь вставьте модуль в VB Editor, где мы начнем с VBA Macros, дважды щелкните по модулю, который откроет нам другое окно, где мы будем писать наш код
Шаг 3: Начните с подфункции следующим образом.
Код:
Sub Sample () End Sub
Шаг 4: Объявите две переменные как double и одну как целое число, одна из которых будет хранить значение для ввода, а другая будет сохранять значение для вывода, а другая будет хранить значение для количества цифр, которые мы хотим округлить,
Код:
Sub Sample () Dim A, B как двойной Dim C как целочисленный конец Sub
Шаг 5: В переменной A сохраните значение числа, которое будет округлено, а в C сохраните значение числа цифр, которое будет округлено. Оба значения мы примем в качестве ввода от пользователя следующим образом:
Код:
Sub Sample () Dim C As Integer A = InputBox («Введите значение», «Значение в десятичных числах») C = InputBox («Введите число цифр для округления», «Введите меньше нуля») End Sub
Шаг 6: В переменной B сохраните округленное значение A следующим образом:
Код:
Sub Sample () Dim A, B As Double Dim C As Integer A = InputBox («Введите значение», «Значение в десятичных числах») C = InputBox («Введите число цифр, округляемых в большую сторону», «Введите меньше нуля» ") B = Application.WorksheetFunction.RoundUp (A, C) End Sub
Шаг 7: Теперь используйте функцию msgbox для отображения округленного значения A следующим образом:
Код:
Sub Sample () Dim A, B As Double Dim C As Integer A = InputBox («Введите значение», «Значение в десятичных числах») C = InputBox («Введите число цифр, округляемых в большую сторону», «Введите меньше нуля» ") B = Application.WorksheetFunction.RoundUp (A, C) MsgBox B End Sub
Шаг 8: Запустите приведенный выше код и введите A следующим образом:
Шаг 9: Нажмите «ОК», чтобы получить другое поле для ввода количества округляемых цифр, введите -1 в качестве ввода,
Шаг 10: Когда мы нажимаем ОК, мы получаем окончательный округленный результат,
Пример №2 - обзор VBA
В этом примере мы примем ввод от пользователя для количества цифр, которые будут округлены до 0.
Шаг 1: Добавьте новый модуль в VBA, в модуле напишите другую подфункцию для другого макроса следующим образом:
Код:
Sub Sample1 () End Sub
Шаг 2: Опять объявляем три переменные, две из которых двойные, а одна - целое число следующим образом:
Код:
Sub Sample1 () Dim A, B как двойной Dim C как целочисленный конец Sub
Шаг 3: Мы знаем, что A сохранит ввод для округляемого числа, а B сохранит количество округляемых цифр следующим образом,
Код:
Sub Sample1 () Dim A, B как двойное Dim C как целое число A = InputBox («Введите значение», «Значение в десятичных числах») C = InputBox («Введите число цифр для округления в большую сторону», «Введите равное нулю») ") End Sub
Шаг 4: В переменной C мы соберем входное значение, которое мы взяли от пользователя, и отобразим его с помощью функции msgbox следующим образом:
Код:
Sub Sample1 () Dim A, B как двойное Dim C как целое число A = InputBox («Введите значение», «Значение в десятичных числах») C = InputBox («Введите число цифр для округления в большую сторону», «Введите равное нулю») ") B = Application.WorksheetFunction.RoundUp (A, C) MsgBox B End Sub
Шаг 5: Теперь запустите приведенный выше код, нажав F5 и введите округленное число следующим образом:
Шаг 6: Нажмите Ok и укажите количество цифр, округляемых до 0, следующим образом:
Шаг 7: Когда мы нажимаем Ok, мы видим следующий результат,
Пример № 3 - обзор VBA
Теперь мы будем использовать последний и последний вариант, чтобы количество цифр было больше нуля, и увидим результат.
Шаг 1: Добавьте новый модуль и добавьте новую подфункцию следующим образом:
Код:
Sub Sample2 () End Sub
Шаг 2: Теперь мы снова объявим три переменные, две из которых двойные, а одна целое число. Один будет хранить значение для ввода, если число должно быть округлено, а другой будет хранить ввод количества цифр,
Код:
Sub Sample2 () Dim A, B As Double Dim C As Integer A = InputBox («Введите значение», «Значение в десятичных числах») C = InputBox («Введите число цифр, округляемых в большую сторону», «Введите больше нуля» ") End Sub
Шаг 3: В переменной B сохраните округленное значение A с функцией округления следующим образом и используйте функцию msgbox для отображения результата,
Код:
Sub Sample2 () Dim A, B As Double Dim C As Integer A = InputBox («Введите значение», «Значение в десятичных числах») C = InputBox («Введите число цифр, округляемых в большую сторону», «Введите больше нуля» ") B = Application.WorksheetFunction.RoundUp (A, C) MsgBox B End Sub
Шаг 4: Теперь мы запускаем код и вводим округленное число,
Шаг 5: Нажмите на Ok и введите количество цифр, округленное до 2,
Шаг 6: Нажмите Ok, чтобы увидеть окончательный результат,
То, что нужно запомнить
Есть несколько вещей, которые мы должны помнить о VBA RoundUp.
- Это похоже на обзор в VBA и Excel.
- В качестве входных данных он принимает число цифр меньше 0 или больше 0 или равно 0.
- На самом деле это функция рабочего листа, которую мы используем в VBA.
- Выходные данные, возвращаемые этой функцией, удваиваются.
Рекомендуемые статьи
Это руководство к VBA Roundup. Здесь мы обсудим, как использовать Excel VBA Roundup вместе с несколькими практическими примерами и загружаемым шаблоном Excel. Вы также можете просмотреть наши другие предлагаемые статьи -
- Как использовать VBA While Loop?
- VBA Удалить дубликаты
- Понимание типов данных VBA
- VBA Sleep с примерами