Округление до 2 знаков после запятой с помощью VBA

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

Ниже приведена ссылка на найденный ответ, который соответствует моей проблеме, но у меня возникли проблемы с реализацией псевдокода.

Функция раунда VBA


person Mike    schedule 13.06.2013    source источник


Ответы (1)


Используйте функцию раунда VBA, см. здесь: http://www.techonthenet.com/excel/formulas/round_vba.php

Но если вы просто хотите, чтобы столбцы отображались как два десятичных знака, почему бы просто не установить формат столбцов как 2 десятичных знака? Нет необходимости использовать код VBA. Вот инструкции, как это сделать:

  1. Выделите весь столбец
  2. Щелкните правой кнопкой мыши, выберите «Формат ячеек ...»,
  3. Перейдите на вкладку «Число», а затем выберите «Пользовательский» для категории.
  4. Выберите 0,00 для Типа.
  5. Теперь попробуйте ввести 1,2345 в одну из ячеек этого столбца, и когда вы покинете ячейку, это будет 1,23.
person dcp    schedule 13.06.2013
comment
Это то, что я ищу, но как мне применить его только к столбцам G-S, у меня есть неизвестное количество строк, и мне нужно, чтобы все значения были округлены. - person Mike; 13.06.2013
comment
@Mike - Я думаю, может быть, вы слишком все усложняете, посмотрите мое последнее редактирование для более простого решения. Или, может быть, я неправильно понял, что вы пытаетесь сделать. - person dcp; 13.06.2013
comment
Я пробовал то, что вы редактировали ранее, однако это не работает для ячеек, которые программа автоматически суммирует. - person Mike; 13.06.2013
comment
Я нашел свое решение, я объявил переменную до тех пор, пока мне нужно было, чтобы она была валютой, чтобы получить числа в правильном формате. - person Mike; 13.06.2013