Vba: как форматировать ячейки в процентах


Вы можете использовать следующий базовый синтаксис в VBA для форматирования каждой ячейки диапазона в процентах.

 SubFormatPercent ()
    Dim i As Integer

    For i = 2 To 11
    Range(" A " & i).NumberFormat = " 0.00% "
    Next i
    
End Sub

В этом конкретном примере каждая ячейка в диапазоне A2:A11 форматируется как процентное значение с двумя десятичными знаками.

В следующем примере показано, как использовать этот синтаксис на практике.

Пример. Форматирование ячеек в процентах с использованием VBA

Предположим, у нас есть следующий список значений в Excel:

Допустим, мы хотим отформатировать каждое значение в процентах.

Например:

  • 0,22 следует отформатировать как 22%.
  • 0,35 следует отформатировать как 35%.

И так далее.

Для этого мы можем создать следующий макрос:

 SubFormatPercent ()
    Dim i As Integer

    For i = 2 To 11
    Range(" A " & i).NumberFormat = " 0.00% "
    Next i
    
End Sub

Когда мы запускаем этот макрос, мы получаем следующий вывод:

Каждое значение теперь форматируется как процент с двумя десятичными знаками.

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

Мы могли бы использовать следующий синтаксис, чтобы не отображать десятичные знаки в каждом проценте:

 SubFormatPercent ()
    Dim i As Integer

    For i = 2 To 11
    Range(" A " & i).NumberFormat = " 0% "
    Next i
    
End Sub

Когда мы запускаем этот макрос, мы получаем следующий вывод:

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

Примечание . Полную документацию по свойству VBA NumberFormat можно найти здесь .

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в VBA:

VBA: как отсортировать лист по нескольким столбцам
VBA: как подсчитать количество строк в диапазоне
VBA: как фильтровать столбец

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *