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

Работает на своем ноутбуке в кафе

Кредит изображения: mavoimages / iStock / Getty Images

Изучение того, как использовать функцию Excel «Roundup» на встроенном языке программирования VBA или Visual Basic для приложений, поможет вам запустить любую функцию Excel из VBA. Этот навык полезен, потому что в Excel есть много функций, которых нет в VBA, и которые вам может потребоваться применить из программы VBA. Обратите внимание, что функция VBA, которая позволяет вам подключиться к функции «Roundup», не предупредит вас о неправильном синтаксисе или аргументе, как это было бы при использовании стандартного интерфейса рабочего листа.

Цель

Функция «Округление» в Excel округляет число в большую сторону до указанного вами количества цифр. Например, запуск «Roundup (2.2, 0)» сообщает Excel, что вы хотите округлить число 2,2 до следующего целого числа. «0» во втором аргументе сообщает Excel, что вам не нужны цифры после десятичной точки, что эквивалентно тому, что вы хотите получить целочисленный ответ.

Видео дня

Функция VBA Round

VBA не имеет встроенной функции "Roundup". Ближайшая функция, которую он имеет, - это функция «Round», которая округляет в большую или меньшую сторону в зависимости от того, больше или меньше конечная цифра в округляемом числе 5. Например, если ввести «Round (2.2, 0)» в окне «Непосредственно» VBA, будет получено 2 вместо 3, до которых функция «Roundup» в Excel округлила бы в большую сторону.

Недвижимость "Формула"

Хотя VBA не имеет собственной функции «Roundup», он может использовать функцию «Roundup» в Excel. Чтобы проинструктировать VBA сделать это, установите для свойства «Формула» виртуального объекта «Диапазон» значение функции «Округление». В следующем примере показано, как это сделать. Откройте среду разработки VBA, одновременно нажав клавиши «Alt» и «F11» в Excel. Щелкните мышью в окне «Немедленно», затем введите следующий оператор: «Диапазон (« A1 »). Formula =« = Roundup (2.2, 0) ».» Вернитесь в Excel, используя только что описанное нажатие клавиши «Alt-F11».. В ячейке A1 вы увидите результат «3», указывающий на то, что ваш оператор успешно применил функцию Excel «Roundup».

Интерактивный пример

Вы можете создать интерактивную программу VBA, которая принимает от пользователя аргументы для функции «Roundup» и отображает результат этой функции. После открытия среды разработки VBA вставьте в окно следующую программу:

Public Sub roundUpANumber () Dim a1, a2, s a1 = CDbl (InputBox («Введите число, которое нужно округлить»)) a2 = CInt (InputBox («Введите количество десятичных знаков, до которых вы хотите округлить только что введенное число. ")) s =" = Roundup ("& a1 &", "& a2 &") "Range (" A1 "). Formula = s Range (" A1 ") .Calculate MsgBox (Диапазон ("A1"). Значение) Конец Sub

Запустите программу, щелкнув один из ее операторов, а затем щелкнув команду «Выполнить» в меню «Выполнить». Когда Excel запросит аргументы функции, введите их и нажмите «Ввод». Ваша программа отобразит результат функции «Roundup» для введенных вами аргументов.