Перейти к содержимому

VBA Excel. Выравнивание текста в ячейке

Выравнивание текста и других значений в ячейке по горизонтали и вертикали из кода VBA Excel. Свойства HorizontalAlignment и VerticalAlignment. Примеры.

  1. Выравнивание по горизонтали
  2. Выравнивание по вертикали
  3. Двойное выравнивание

Выравнивание по горизонтали

Для выравнивания текста в ячейках рабочего листа по горизонтали в VBA Excel используется свойство HorizontalAlignment объекта Range. Оно может принимать следующие значения:

Выравнивание Константа Значение
По левому краю xlLeft -4131
По центру xlCenter -4108
По правому краю xlRight -4152

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

Пример 1
Заполним три первые ячейки листа Excel текстом, соответствующим предполагаемому выравниванию. Затем применим к ним выравнивание по горизонтали, а в ячейках ниже выведем соответствующие значения констант.

Sub Primer1()
'Заполняем ячейки текстом
   Range("A1") = "Левая сторона"
   Range("B1") = "Центр ячейки"
   Range("C1") = "Правая сторона"
'Применяем горизонтальное выравнивание
   Range("A1").HorizontalAlignment = xlLeft
   Range("B1").HorizontalAlignment = xlCenter
   Range("C1").HorizontalAlignment = xlRight
'Выводим значения констант
   Range("A2") = "xlLeft  =  " & xlLeft
   Range("B2") = "xlCenter  =  " & xlCenter
   Range("C2") = "xlRight  =  " & xlRight
End Sub

Выравнивание по вертикали

Для выравнивания текста в ячейках рабочего листа по вертикали в VBA Excel используется свойство VerticalAlignment объекта Range. Оно может принимать следующие значения:

Выравнивание Константа Значение
По верхнему краю xlTop -4160
По центру xlCenter -4108
По нижнему краю xlBottom -4107

Точно так же, как и по горизонтали, при выравнивании по вертикали свойству VerticalAlignment можно присваивать как значение из константы, так и непосредственно ее числовое значение.

Пример 2
Заполним три первые ячейки третьей строки листа Excel текстом, соответствующим предполагаемому выравниванию. Затем применим к ним выравнивание по вертикали, а в ячейках ниже выведем соответствующие значения констант.

Sub Primer2()
'Заполняем ячейки текстом
   Range("A3") = "Верх"
   Range("B3") = "Центр"
   Range("C3") = "Низ"
'Применяем вертикальное выравнивание
   Range("A3").VerticalAlignment = xlTop
   Range("B3").VerticalAlignment = xlCenter
   Range("C3").VerticalAlignment = xlBottom
'Выводим значения констант
   Range("A4") = "xlTop  =  " & xlTop
   Range("B4") = "xlCenter  =  " & xlCenter
   Range("C4") = "xlBottom  =  " & xlBottom
End Sub

Двойное выравнивание

В следующем примере рассмотрим выравнивание из кода VBA одновременно по горизонтали и вертикали. Причем, применим выравнивание ко всем ячейкам рабочего листа Excel, которые были задействованы в предыдущих примерах.

Пример 3
Записываем в ячейки диапазона "A1:C4" текст «Всё по центру», применяем горизонтальное и вертикальное выравнивание по центру для всего диапазона.

Sub Primer3()
   With Range("A1:C4")
      .Value = "Всё по центру"
      .HorizontalAlignment = -4108
      .VerticalAlignment = xlCenter
   End With
End Sub

Обратите внимание, что выравнивание текста применяется как при использовании константы, так и соответствующего ей числового значения.

Содержание рубрики VBA Excel по тематическим разделам со ссылками на все статьи.

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

Ваш комментарий будет опубликован после прохождения обязательной модерации. Исходящие ссылки не допускаются. Время модерации составит от нескольких минут до нескольких часов в зависимости от времени суток и занятости модератора. При добавлении в комментарий кода VBA Excel, вставьте перед его началом тег [vb] и по окончании кода - [/vb].