Главная » Статьи » VBA и макросы |
Выполняете одни и те же движения с документами каждый раз? Вспоминаете фильм "День сурка" когда одинаковые задачи постоянно повторяются и много времени уходит на их решение? Зачем тратить столько усилий если Excel прекрасно умеет копировать ваши действия, главное правильно построить команды и запускать их в нужный момент. Другая причина использовать инструмент "запись сценария" - при необходимости узнать как решить задачу в проекте, с которой ранее никогда не сталкивались (изменить цвет ячейки, добавить рамку в талбицу или что угодно другое). Сразу отметим, что не всегда можно найти ответ таким образом но в большинстве простых случаев это работает. Допустим появилось желание используя vba менять фоновый цвет некоторым ячейкам или начначать фоновый градиентный цвет. Раньше никогда такого не делали и ответа не знаем, вместо поиска решения в интернете выполняем шаги:
Как это выглядит: В примере выше мы записали для первого листа несколько действий: изменили ширину столбцов, установили форматирование для шапки таблицы и применили сортировку по количеству населения в городах. Как видите на втором листе все эти же действия нам удалось повторить нажав 3 раза кнопку мыши. Единственное замечание к таким манипуляциям: часто автогенерируемый код содержит прямые ссылки на объекты вместо относительных, например в нашем примере выше пришлось вручную поменять Worksheets("Sheet1") на относительный указатель активного листа ActiveSheet, таким образом наш макрос будет работать теперь с листом, который сейчас активен. Если макрос универсален и будет использоваться часто, можно назначить для него комбинацию клавиш быстрого доступа. Указать можно при создании макроса или при редактировании нажав на "Options", выбрать любую букву английского алфавита и в дальнейшем при нажатии комбинации Ctrl + указанная буква, сразу же будет выполняться связанный с ней макрос. Не устанавливайте для быстрого доступа буквы S, X, C, V, A, которые часто используются для действий по-умолчанию.
| |
Просмотров: 522 | | |
Всего комментариев: 0 | |