Як округлити значення у vba (з прикладами)
Ви можете використовувати метод RoundUp у VBA, щоб округлити значення.
Ця функція використовує такий базовий синтаксис:
Sub RoundUpValue()
Range(" B1 ") = WorksheetFunction.RoundUp(Range(" A1 "), 0)
End Sub
У цьому конкретному прикладі значення в клітинці A1 округлиться до найближчого цілого числа та відобразить результат у клітинці B1 .
Зауважте, що другий аргумент методу RoundUp визначає кількість цифр, які потрібно округлити, де:
- -3 раунди до наступної тисячі
- -2 раунди до найближчої сотні
- -1 округлює до найближчого десяти
- 0 округлює до найближчого цілого числа
- 1 округлює до найближчої десятої (один знак після коми)
- 2 округлено до сотих (два знаки після коми)
- 3 округлено до найближчої тисячної (три знаки після коми)
І так далі.
У наступних прикладах показано, як використовувати метод RoundUp на практиці.
Приклад 1: Округлення до найближчого цілого числа у VBA
Ми можемо створити такий макрос, щоб округлити значення в клітинці A1 до найближчого цілого числа та відобразити результат у клітинці B1 :
Sub RoundUpValue()
Range(" B1 ") = WorksheetFunction.RoundUp(Range(" A1 "), 0)
End Sub
Коли ми запускаємо цей макрос, ми отримуємо такий результат:
Зауважте, що значення 1432,78 у клітинці A1 було округлено до найближчого цілого числа 1433 у клітинці B1 .
Приклад 2: Округлення до найближчої сотні у VBA
Ми можемо створити такий макрос, щоб округлити значення в клітинці A1 до найближчої сотні та відобразити результат у клітинці B1 :
Sub RoundUpValue()
Range(" B1 ") = WorksheetFunction.RoundUp(Range(" A1 "), -2)
End Sub
Коли ми запускаємо цей макрос, ми отримуємо такий результат:
Зауважте, що значення 1432,78 у клітинці A1 було округлено до найближчої сотні 1500 у клітинці B1 .
Приклад 3: Округлення до найближчої десятої у VBA
Ми можемо створити наступний макрос, щоб округлити значення в клітинці A1 до найближчої десятої (тобто до одного знака після коми) і відобразити результат у клітинці B1 :
Sub RoundUpValue()
Range(" B1 ") = WorksheetFunction.RoundUp(Range(" A1 "), 1)
End Sub
Коли ми запускаємо цей макрос, ми отримуємо такий результат:
Зверніть увагу, що значення 1432,78 у клітинці A1 було округлено до найближчої десятої 1432,8 у клітинці B1 .
Примітка . Ви можете знайти повну документацію для методу VBA RoundUp тут .
Додаткові ресурси
У наступних посібниках пояснюється, як виконувати інші типові завдання у VBA:
VBA: як написати функції SUMIF і SUMIFS
VBA: як написати функції COUNTIF і COUNTIFS
VBA: як написати функції AVERAGEIF і AVERAGEIFS