Как выбрать и изменить форматирование диапазона

Что делает макрос: Этот простой макрос выбирает диапазон D5: D16 и форматирует его.

Как макрос работает

В этом макросе определяется диапазон для выбора с помощью объекта Range.

Код макроса

Sub VibratDiapazon()
'Выбор диапазона
Range("D5:D16").Select
End Sub

После того, как выбран диапазон ячеек, вы можете использовать любые свойства Range, манипулируя ячейками. Мы изменили этот макрос, чтобы диапазон желтого цвета преобразовался в формат числа и стал выделенным жирным шрифтом.

Sub IzmenitFormat()
'Выбор диапазона
Range("D5:D16").Select
'Преобразование в формат числа
Selection.NumberFormat = "#,##0"
'Жирный шрифт
Selection.Font.Bold = True
'Заливка желтым цветом
Selection.Interior.ColorIndex = 36
End Sub

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

Вы заметили, что мы называем Selection много раз в предыдущем примере кода. Для того, чтобы написать более эффективный код, вы можете просто сослаться на диапазон, используя With … End With. Этот оператор говорит Excel, что любое действие, которое вы выполняете относится к объекту, который вы указали.

Обратите внимание, что этот макрос фактически не выбирает диапазон в первую очередь. Это ключевой момент. В макросе, мы можем работать с диапазоном, не выбирая его в первую очередь.

Sub IzmenitFormatWith()
With Range("D5:D16")
.NumberFormat = "#,##0"
.Font.Bold = True
.Interior.ColorIndex = 36
End With
End Sub

Как этот код работает

Еще один способ, вы можете выбрать диапазон с помощью элемента ячейки объекта Range.
Адрес ячеек — это удобный способ выбора диапазонов через код. Он требует только позиции строк и столбцов в качестве параметров. Ячейка (5, 4) относится к строке 5, столбцу 4 (или ячейка D5).
Ячейки (16, 4) относится к строке 16, столбцу 4 (или ячейки D16). Если вы хотите выбрать диапазон ячеек, просто укажите два пункта в объект Range. Этот макрос выполняет один и тот же выбор диапазона D5:D16:

Код макроса

Sub IzmenitFormatRange()
Range(Cells(5, 4), Cells(16, 4)).Select
End Sub

Как этот код работает

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

Код макроса

Sub IzmenitFormat3()
With Range(Cells(5, 4), Cells(16, 4))
.NumberFormat = "#,##0"
.Font.Bold = True
.Interior.ColorIndex = 36
End With
End Sub

Как использовать

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

  1. Активируйте редактор Visual Basic, нажав ALT + F11 на клавиатуре.
  2. Щелкните правой кнопкой мыши имя проекта / рабочей книги в окне проекта.
  3. Выберите Insert➜Module.
  4. Введите или вставьте код в окно кода.
Оцените статью
Добавить комментарий