С помощью макросов вы можете значительно повысить эффективность обработки и работы с информацией в Excel, потому что многие из тех же действий, которые нам приходится повторять, можно формализовать в виде специального кода, который позаботится об этом. В этой статье мы увидим, как создать новый макрос и как изменить существующий.
Создание макросов
В Excel вы можете создавать макросы вручную или автоматически. Последний вариант предполагает запись выполняемых нами действий в программе для их дальнейшего повторения. Это довольно простой метод, пользователю не обязательно иметь навыки кодирования и так далее, но в этом плане он не всегда применим.
Чтобы создавать макросы вручную, нужно уметь программировать. Но именно этот метод иногда является единственным или одним из немногих вариантов эффективного решения поставленной задачи.
Метод 1: Записываем макрос в автоматическом режиме
Чтобы иметь возможность автоматически записывать макросы, вы должны сначала активировать их в параметрах Excel.
Вы можете узнать, как это сделать, в нашей статье — «Как включить и отключить макросы в Excel”.
После включения макросов мы можем перейти к нашей основной задаче.
- Перейдите на вкладку «Разработчик». В группе инструментов «Код» щелкните значок «Запись макроса”.
- На экране появится окно, в котором мы сможем настроить параметры записи. Здесь сказано:
- имя макроса — любое, но должно начинаться с буквы (не цифры), пробелы не допускаются.
- сочетание клавиш для запуска макроса. Обязательный — Ctrl, а второе мы можем назначить в специальном поле. Допустим, это клавиша «r». Если вам нужно использовать заглавную букву, вам нужно удерживать клавишу Shift, которая будет добавлена к сочетанию клавиш.
- место, где хранится макрос. По умолчанию это будет текущая книга, но при необходимости вы можете выбрать новую книгу или макрос личной книги. В нашем случае мы оставляем стандартный вариант.
- При желании вы можете добавить описание к макросу.
- Когда все будет готово, нажмите ОК.
- Теперь созданный макрос будет записывать все действия, которые мы будем выполнять в книге. И так до тех пор, пока мы не остановим запись.
- Допустим, в ячейке D2 мы умножаем две ячейки (B2 и B3): = B2 * B3.
- После того, как выражение будет готово, нажмите клавишу Enter, чтобы получить результат. Затем мы останавливаем запись макроса, щелкнув значок «Стоп» (который появился вместо кнопки «Записать макрос») в группе инструментов «Код”.
Запускаем выполнение макроса
Чтобы проверить работу записанного макроса, нужно сделать следующее:
- На этой же вкладке («Разработчик») и в группе «Код» нажмите кнопку «Макрос» (также можно использовать сочетание клавиш Alt + F8).
- В появившемся окне выбираем наш макрос и нажимаем на команду «Выполнить”. Примечание. Есть более простой способ запустить выполнение макроса: использовать сочетание клавиш, которое мы указали при создании макроса.
- Результатом проверки будет повторение ранее выполненных действий (записано.
Корректируем макрос
Созданный макрос можно редактировать. Наиболее частая причина, по которой возникает такая необходимость, — это ошибки, допущенные при регистрации. Вот как отредактировать макрос:
- Нажмите кнопку «Макрос» (или комбинацию Ctrl + F8).
- В появившемся окне выбираем наш макрос и нажимаем «Изменить”.
- На экране появится окно редактора «Microsoft Visual Basic», в котором мы можем вносить изменения. Структура каждого макроса следующая:
- открывается командой «Sub», закрывается командой «End Sub”;
- после «Sub» отображается название макроса;
- ниже — описание (если есть) и назначенная комбинация клавиш;
- команду «Интервал («… »). Выбрать »возвращает номер ячейки. Например, «Диапазон (« B2 »). Выбрать» выбирает ячейку B2.
- Строка ActiveCell.FormulaR1C1 указывает значение ячейки или действие в формуле.
- Попробуем исправить макрос, т.е добавить ячейку B4 со значением 3. В код макроса нужно добавить следующие строки:
Дальность («В4»). Выбирать
ActiveCell.FormulaR1C1 = «3» - Следовательно, для полученной ячейки D2 вам также необходимо изменить исходное выражение следующим образом:
ActiveCell.FormulaR1C1 = «= RC [-2] * R [1] C [-2] * R [2] C [-2]». Примечание. Обратите внимание, что адреса ячеек в этой строке (ActiveCell.FormulaR1C1) написаны в стиле R1C1. - Когда все будет готово, вы можете закрыть редактор (просто нажмите на крестик в правом верхнем углу окна).
- Запускаем выполнение измененного макроса, после чего видим, что в таблице появилась новая полная ячейка (B4 со значением «3») и, кроме того, результат был пересчитан с учетом измененной формулы.
- Если мы имеем дело с большим макросом, выполнение которого может занять много времени, ручное редактирование изменений поможет быстрее справиться с задачей.
- Добавив в конце команду Application.ScreenUpdating = False, мы можем ускорить работу, так как во время работы макроса изменения не будут отображаться на экране.
- Если нужно снова вернуть отображение на экран, напишите команду: Application.ScreenUpdating = True.
- Чтобы не загружать программу с пересчетом после каждой внесенной модификации, вначале пишем команду Application.Calculation = xlCalculationManual, а в конце — Application.Calculation = xlCalculationAutomatic. Теперь расчет будет производиться только один раз.
Метод 2: создание макроса вручную
Опытные пользователи Excel иногда предпочитают создавать макросы от начала до конца полностью вручную. План действий следующий:
- На вкладке «Разработчик» щелкните значок «Visual Basic» (группа инструментов «Код”).
- В результате на экране появится уже знакомое окно, о котором мы говорили выше.
- Здесь вы создаете макрос и пишете его код полностью вручную.
Заключение
Поэтому использование макросов в редакторе таблиц Excel позволяет повысить эффективность и скорость работы. Создавать их можно либо в автоматическом режиме, просто записывая выполняемые действия, либо написав код с нуля. Также при необходимости вы можете внести изменения в ранее созданный макрос и настроить некоторые аспекты его работы.