Какие знаешь модификаторы для директивы VBA INT

«Какие знаешь модификаторы для директивы VBA INT» — вопрос из категории Архитектура, который задают на 10% собеседований Frontend Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

В VBA нет модификаторов для функции Int(). Она просто возвращает целую часть числа, отбрасывая дробную:

Dim num As Double
num = 5.9
Debug.Print Int(num) ' Выведет 5

num = -5.9
Debug.Print Int(num) ' Выведет -6 (округляет в меньшую сторону)

Для других вариантов округления используйте:

  • Fix() - аналогично Int, но для отрицательных чисел отбрасывает дробную часть
  • Round() - стандартное математическое округление
  • CInt(), CLng() - преобразуют с округлением до ближайшего целого