VBA Round | Как использовать функцию округления Excel VBA?

Функция округления Excel VBA

Функция округления в VBA - это математическая функция, которая, как следует из названия, округляет заданное число в большую или меньшую сторону до определенного набора десятичных знаков, указанного пользователем, эта функция использует логику округления, даже что означает, что в качестве ссылка и любое число с последней цифрой после запятой меньше 5, тогда оно округляется в меньшую сторону, и наоборот.

Вы можете округлить число до двузначного десятичного, трехзначного десятичного числа или вообще без десятичного числа. Например, если у вас номер 5,8697. Если округлить число до двузначного десятичного числа, оно будет 5,87, если округлить до трех цифр, то оно будет округлено до 5,870, если вы хотите округлить до нуля, то получится 6.-

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

Я надеюсь, что вы использовали на листе функцию ОКРУГЛ. В VBA мы также можем использовать эту функцию, но у нас есть разница с этими функциями. Мы увидим разницу между этими двумя функциями позже в этой статье.

Синтаксис

Взгляните на синтаксис функции Round.

Число: это число, которое мы пытаемся округлить.

[Количество цифр после десятичного числа]: сколько цифр вам нужно после десятичного значения.

Примеры

Вы можете скачать этот шаблон Excel с круглыми функциями VBA здесь - Шаблон Excel с круглыми функциями VBA

Предположим, у вас есть число 4,534, и вы хотите округлить его до двух цифр.

Следуйте приведенным ниже инструкциям.

Шаг 1. Объявите переменную как вариант.

Код:

 Sub Round_Example1 () Dim K As Variant End Sub 

Шаг 2: Для этой переменной « k » присвойте значение с помощью функции ROUND.

Код:

 Sub Round_Example1 () Dim K как вариант K = Round (End Sub 

Шаг 3: Число - это не что иное, как число, которое мы пытаемся округлить, в данном случае это число 4,534.

Код:

 Sub Round_Example1 () Dim K как вариант K = Round (4.534, End Sub 

Шаг 4: Сколько цифр нам нужно округлить, в этом случае нам нужно округлить до 2 цифр .

Код:

 Sub Round_Example1 () Dim K как вариант K = Round (4.534, 2) End Sub 

Шаг 5: Теперь покажите значение переменной «k» в окне сообщения VBA.

Код:

 Sub Round_Example1 () Dim K как вариант K = Round (4.534, 2) MsgBox K End Sub 

Запустите этот код и посмотрите, что мы получим.

После округления до двух цифр мы получили 4,53 .

Теперь поменяю число с 4.534 на 4.535 . Посмотри, что сейчас происходит.

Код:

 Sub Round_Example1 () Dim K как вариант K = Round (4.535, 2) MsgBox K End Sub 

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

Мы получили результат 4,54, который на один десятичный знак больше предыдущего значения 4,53. Это потому, что в этом примере мы предоставили число как 4,535, поэтому после числа 3 следующее число будет 5, поэтому оно округляется до следующего числа, поэтому 3 становится 4.

Теперь я введу число как 2.452678 и попытаюсь округлить до трех цифр.

Код:

 Sub Round_Example2 () Dim K как вариант K = Round (2.452678, 3) MsgBox K End Sub 

Запустите этот код, чтобы увидеть результат.

Результат 2.453 .

2,45 2678 Здесь числа после 2-го десятичного знака - 2678. После числа 2 следующее число - 6, которое больше или равно 5, поэтому оно округляется до следующего десятичного числа.

Теперь я использую то же число, чтобы округлить до нуля и посмотреть, что произойдет.

Код:

 Sub Round_Example3 () Dim K As Variant K = Round (2.452678, 0) MsgBox K End Sub 

Запустим код и посмотрим, что у нас получится.

Поскольку я использовал округление до нуля, мы получили результат 2.

Причина, по которой мы получили результат как 2, потому что здесь первое десятичное число 4, что меньше 0,5, поэтому оно округляется в меньшую сторону.

Разница между Excel и функцией ROUND в VBA

В основном есть 2 отличия.

# 1 - Синтаксис обеих функций:

Если вы посмотрите на синтаксис обеих функций, у нас есть разница.

Синтаксис Excel Round: Round (число, количество цифр после десятичной дроби)
Синтаксис VBA Round: Round (Число, [Число цифр после десятичного числа])

В Excel оба аргумента являются обязательными, но в VBA второй аргумент является необязательным.

В VBA, если вы игнорируете второй аргумент, он принимает аргумент по умолчанию как ноль, поэтому мы получим все число.

# 2 - Результаты:

Эти две функции дают разные результаты. Ниже приведены несколько примеров