среда, 2 февраля 2011 г.

Пример макроса. Форматируем таблицу.

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

Итак, есть таблица



и мы хотим ее отформатировать так:
  • шапка и последняя (итоговая) строки - жирным шрифтом, текст шапки - по центру
  • граница всей таблицы - сплошной жирной линией
  • границы ячеек внутри - пунктирной линией


Запускаем на запись макрос "Меню" - "Сервис" - "Макрос" - "Начать запись".

Дальше по шагам:
  1. Выделяем всю таблицу.
  2. Правой кнопкой вызываем контекстное меню и выбираем "Формат ячеек".
  3. Выбираем вкладку "Граница". Выбираем тип линии "сплошная жирная" и щелкаем кнопку "внешние", затем тип линии "пунктир" и щелкаем кнопку "внутренние".
  4. Щелкаем ОК. Границы должны появиться.
  5. Выделяем первую строку таблицы и щелкаем на панели инструментов  "форматирование" кнопки "по центру" и "полужирный".
  6. Выделяем последнюю строку таблицы и щелкаем на панели инструментов  "форматирование" кнопку "полужирный".
Останавливаем запись макроса и открываем его для редактирования "Меню" - "Сервис" - "Макрос" - "Макросы" кнопка "Изменить"

Получаем такой код:



Справа от команд я записал, что выполняет команда.

Глядя на макрос мы видим жесткую привязку к диапазонам. Надо от этого избавиться.

Удаляем строки со второй по четвертую, а именно
Range("B4:F12").Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone

Удаляем строку  
Range("B4:F4").Select   
и вместо следующей строки
With Selection
пишем
With Selection.Rows(1)  - так мы ссылаемся на первую строку выделенного диапазона

Вместо строки
Selection.Font.Bold = True
пишем
Selection.Rows(1).Font.Bold = True  - опять же ссылаемся на первую строку и делаем текст в ней жирным.

Удаляем строку
Range("B12:F12").Select  
и вместо следующей строки
Selection.Font.Bold = True
пишем
Selection.Rows(Selection.Rows.Count).Font.Bold = True - ссылаемся на последнюю строку и делаем текст в ней жирным.

Теперь можно проверить макрос.

Для этого выделяем нужную таблицу и запускаем макрос  "Меню" - "Сервис" - "Макрос" - "Макросы" кнопка "Выполнить".

Похожие по тематике посты - еще почитать:

Комментариев нет:

Отправить комментарий