Как сделать макрос

Обновлено: 07.07.2024

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

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

Что такое макрос и для чего он применяется

Итак, макрос – это набор команд, которые должен выполнить Эксель. Они дают возможность автоматизировать почти любые часто повторяющиеся задачи. Достаточно просто выбрать одну команду один раз, воспользовавшись комбинацией горячих клавиш или панелью инструментов.

Макросы пишутся с помощью языка программирования VBA, но простой макрос можно записать и без него. Технически он ничем не отличается от программы, потому что содержит набор инструкций, которые компьютеру нужно выполнить. Нередко макрос сравнивается с кулинарным рецептом, где также описывается, в какой последовательности нужно выполнить какие действия, чтобы получить желаемый результат.

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

Инструкции, которые передаются макросу, содержат макрооператоры – конкретные команды, которые офисному пакету нужно выполнить. Ряд из них являются специфическими, но большая часть соответствует командам из главного меню. Это делается для того, чтобы сделать процесс создания макросов более дружелюбным для пользователя.

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

Как создать новый макрос в Excel

Как мы уже поняли, есть два способа записи макросов в Excel: ручной или автоматический. Чтобы воспользоваться последним методом, не требуется наличие каких-либо навыков программирования. Правда, он ограничен и не дает возможности записывать условия, формировать сложные циклы и так далее.

Поэтому для профессионального овладения электронными таблицами умение программировать обязательно. Ведь нередко кроме непосредственно написания кода невозможно вообще как-либо решать поставленные задачи.

Способ 1. Автоматический запуск макроса

Далее пользователь увидит диалоговое окно. С него можно задать параметры для нашей будущей подпрограммы. Здесь доступны следующие настройки:

  1. Имя макроса. Допустимо использование какого-угодно имени за исключением того, которое начинается с числа или символа. При этом нельзя в качестве имени использовать больше одного слова.
  2. Комбинация клавиш. Это некий пусковой крючок для макроса. Он используется для того, чтобы включить макрос. Все горячие клавиши начинаются с клавиши Ctrl, а вторую можно настроить самостоятельно. Например, можно использовать горячую клавишу r. Также возможен ввод большой буквы. Для этого необходимо воспользоваться клавишей Shift, которая автоматически добавляется в комбинацию горячих клавиш.
  3. Место хранения. По умолчанию предусмотрен вариант, когда макрос применяется к текущей книге. Тем не менее, пользователь может выбрать новую или создать собственную книгу для макросов.
  4. Описание. При желании пользователь может в нескольких предложениях описать, что будет делать макрос. Это будет особенно полезно, если одной и той же книгой пользуются несколько человек.

Запуск выполнения макроса

Как же проверить, работает ли наш макрос? Для этого нужно выполнить следующие действия:

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

Корректировка макроса

На данном этапе нужно уже немного переходить к следующей теме: ручное редактирование макроса. Любой макрос начинается командой Sub. О том, что макрос заканчивается, компьютер понимает по команде End Sub. После слова Sub показывается название макроса. После этого в структуре записывается описание макроса и та комбинация клавиш, которая необходима для его запуска.

Как создавать, изменять и запускать макросы в Excel

Далее следуют команды, которые выполняют конкретные действия. Например, номер ячейки мы получаем с помощью оператора Range. В нашем примере, мы получаем ячейку B2 с помощью команды Range(“B2″).Select. Это действие аналогично выбору ячейки левой кнопкой мышки. Значение ячейки, которая выбрана на данный момент указывается с помощью оператора ActiveCell.FormulaR1C1.

Давайте попробуем наш макрос немного отредактировать. Допустим, нам нужно выполнить такую задачу: добавить дополнительную ячейку с адресом B4 и значением 3. В таком случае в код необходимо добавить такие строки:

Как создавать, изменять и запускать макросы в Excel

Как создавать, изменять и запускать макросы в Excel

Внимание! Видим, что адреса в ячейках в данном примере записываются, как R1C1.

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

Далее нужно перепроверить макрос еще раз. Видим, что после его исполнения в таблице появилась еще одна ячейка. Если макрос очень большой, то ручное редактирование имеет множество преимуществ перед повторной его записью. Также оно позволяет избежать повторных ошибок.

Также можно ускорить работу макроса путем добавления команды Application.ScreenUpdating = False. После этого на экране не будут показываться те промежуточные шаги, которые выполняет макрос, лишь конечный результат. Если же нужно, чтобы отображение на экране было вновь включено, тогда нужно заменить False на True.

Способ 2. Создание макроса в ручном режиме

Автоматическая запись макроса – это хорошо, но данный метод имеет множество недостатков. Профессионалы создают макросы вручную. Для этого нужно выучить язык VBA и выполнять следующие действия:

Надо отметить, что все детали сегодня рассмотреть не получится, поскольку нужно знать язык VBA для этого. Тем не менее, общий механизм такой. А после того, как вы освоите язык VBA, вы сможете уже учиться и более сложным языкам программирования, поскольку логика одинаковая что для написания макроса, что для написания полноценных компьютерных программ.

Как изменять существующие макросы

Детали о том, как изменять существующие макросы, описывались выше. В целом логика остается той же самой, за тем лишь исключением, что коррекция макросов – это точечные изменения (например, отредактировать ячейку, если случайно была выбрана неправильно). В то время как изменение – более фундаментальное редактирование, включая добавление новых строк кода и так далее.

Заключение

Соавтор(ы): Jack Lloyd. Джек Ллойд — автор и редактор, пишущий о технологиях для wikiHow. Имеет более двух лет опыта в написании и редактировании статей на технические темы. Энтузиаст всего связанного с технологиями и учитель английского языка.

Макрос представляет собой небольшую программу, которая выполняет ряд действий в рамках программного обеспечения, такого как текстовые процессоры и электронные таблицы. Большинство программ поставляются со многими макросами, r которым можно получить доступ из меню или с помощью нажатий нескольких клавиш. Тем не менее, вы можете обнаружить, что можете завершить работу, которую делаете, легче и быстрее, если вы создадите свои собственные макросы. Каждый пакет программного обеспечения имеет свой собственный способ создания макросов, но большинство должно позволить вам создавать макрос путем записи.

Изображение с названием Create Macros Step 1

Убедитесь, что вы знаете, как выполнять каждую нужную операцию и где найти все пункты меню, которые нужно выбрать, чтобы вам не пришлось искать их во время записи. Макрос запишет каждое нажатие клавиши и кнопки мыши, в том числе те, которые являются ошибочными, такие как - нажатия на опции меню, которые не те, что вы хотите. Эти ошибки будут иметь место каждый раз при запуске макроса.

Изображение с названием Create Macros Step 2

Найдите меню Macros и выберите опцию для записи макроса. Вы увидите значок или другой индикатор того, что вы записываете. Например, Microsoft Word будет отображать значок рядом с указателем мыши, который напоминает кассету.

Изображение с названием Create Macros Step 3

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

Изображение с названием Create Macros Step 4

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

Изображение с названием Create Macros Step 5

Изображение с названием Create Macros Step 6

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

Изображение с названием Create Macros Step 7

Редактируйте макрос, если можете; в противном случае, перезапишите его. Если вы ничего не знаете о написании программ, вы, вероятно, не будете иметь возможность редактировать макрос. Вместо этого перезапишите макрос, чтобы внести изменения, заменив существующий макрос на новый под тем же названием.

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

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

Давайте поподробнее разберемся в тонкостях работы с макросами.

Введение

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

Макрос в Excel — это программа, записанная на языке программирования Visual Basic for Applications (VBA), которая выполняет определенную последовательность действий.

Как записать макрос в Excel?

В Excel есть встроенная программа макрорекордер, которая записывает каждое действие пользователя и переводит его в язык программирования VBA.
Такой способ записи макроса не требует специальных знаний программирования, поэтому запись макроса с помощью макрорекордера — самый простой способ создания макроса.
Однако при работе с макрорекордером есть свои недостатки:

  1. Макрорекордер записывает все Ваши действия, в том числе и случайно сделанные ошибки. Поэтому перед записью макроса четко продумайте список выполняемых действий — это поможет избежать ошибок;
  2. Макрорекордер записывает действия, выполненные только в программе Excel. Переключения на другие программы макрорекордер не записывает;
  3. Макрорекордер записывает только те действия, для которых есть кнопки или команды меню в Excel.

Запись макроса макрорекордером

Создание макроса

Настраиваем поля записываемого макроса (можно оставить поля пустыми):

Имя макроса

Выбор имени макроса и сочетания клавиш

  1. Имя макроса — произвольное имя на русском или английском языке;
  2. Сочетание клавиш — комбинация клавиш, которой в дальнейшем будет запускаться макрос;
  3. Сохранить в — книга в которой будет сохраняться макрос.

Конец записи макроса

Конец записи макроса

Как выполнить макрос в Excel?

Выбор макроса

Просмотр кода макроса

Код макроса

При знании языка VBA код макроса можно либо изменить, например, для удаления ошибок или для добавления новых действий для данного макроса, либо создать макрос с нуля на Visual Basic.

Осваиваем макросы. Как автоматизировать любую задачу на Windows и macOS

Каждый из нас хочет иметь больше свободного времени. Один из способов достичь этой цели – настроить компьютер на автоматическое выполнение повторяющихся задач, таких как изменение имени файлов и размера изображений, запуск и остановка работы определенных приложений. Имея под рукой необходимое программное обеспечение, вы можете освободить себя от рутинных дел.

Помимо приложений, о которых мы будем говорить ниже, есть целый ряд программ, функции которых по умолчанию могут быть автоматизированы. Это может быть одна или целая комбинация опций, которые будут применены к новым файлам – будь то поворот фотографии или сохранение текстового документа в формате PDF. Стоит самому покопаться в функционале программного обеспечения, которое вы используете, чтобы понять, есть ли возможность автоматизации определенных опций по умолчанию.

Windows

Windows не имеет собственного Macro Recorder (программы для записи макросов). Однако Microsoft разработала бесплатный инструмент Power Automate Desktop для всех тех, кто хочет автоматизировать выполнение определенных задач в системе. Это многофункциональное программное обеспечение, с которым придется повозиться некоторое время, чтобы полностью разобраться в его работе. Однако оно способно автоматизировать выполнение целого ряда задач в вашей операционной системе.

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

Среди других вариантов, представленных на рынке, можно выделить RoboTask. Он является одним из самых продуманных инструментов для автоматизации выполнения процессов в Windows. За 150$ в год (60$ - за каждое продление подписки на следующий год) вы получите невероятную функциональность и возможность автоматизировать почти все процессы. Кроме того, в течение 30 дней можно бесплатно использовать RoboTask, чтобы в полной мере протестировать его возможности. Стоит сказать, что на рынке также есть более старая, урезанная, но бесплатная версия RoboTask, которая подойдет тем, кто не имеет возможности оформить платную подписку.

Macro Recorder – это еще один инструмент, который заслуживает вашего внимания. Он более прост и удобен в использовании, чем предыдущие два варианта. И хотя вам придется разово заплатить 50$, чтобы пользоваться данным программным обеспечением, вы также можете протестировать его бесплатную версию. Macro Recorderиспользует несколько иной подход к построению макросов: он записывает действия, которые осуществил пользователь с помощью мыши и клавиатуры, и воспроизводит их.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/cffb9989-ab8c-457b-b841-a3a0fab3df2f/Untitled.jpg

Macro Recorder

Еще одна программа, на которую стоит обратить свое внимание, это Free Macro Recorder. Как уже понятно из названия инструмента, он абсолютно бесплатен. Работает примерно так же, как и Macro Recorder: вы запускаете запись, выполняете все необходимые действия с помощью клавиатуры и мыши, после чего они автоматизируются программой.

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

macOS

Если говорить о подобных встроенных инструментах на Mac OS, Automator поможет вам сделать так, чтобы определенный процесс автоматически выполнялся несколько раз. Программа может автоматизировать различные операции: начиная с редактирования файлов и заканчивая изменением параметров фото. Инструмент не прост в использовании, однако обладает богатым функционалом.

После запуска Automator вам будет предложено создать новую автоматизированную задачу, которая называется рабочим процессом. У вас есть несколько различных типов процессов на выбор:

  • рабочий (макросы, которые уже есть в программе по умолчанию);
  • приложение (макросы, которые будут созданы автономно);
  • действия с папками (макросы, которые активируются после перемещения файла в определенную папку);
  • календарный (макросы, которые активируются по расписанию).

Apple создала достаточно полезное руководство по использованию данной программы. Если не знаете, с чего начать, то стоит открыть список рабочих процессов по умолчанию (которые уже представлены в самой программе). Там найдутся автоматизированные действия, связанные с поиском определенных песен в вашей медиатеке, перемещения ненужных файлов в корзину и не только.

В целом Automator подходит для автоматизации многих задач: переименования пакетов файлов, извлечения текста из PDF-файлов, закрытия всех запущенных приложений, изменения размера целых групп изображений, превращения содержимого буфера обмена в текстовый файл. Придется уделить достаточное количество времени, чтобы разобраться в возможностях программы, но это того стоит.

Keyboard Maestro – это одна из самых популярных сторонних программ для автоматизации процессов. Она обойдется вам в 36$, однако вы можете протестировать возможности инструмента в его бесплатной пробной версии. Keyboard Maestro более прост в использовании. Инструмент также имеет опцию ручной записи макроса, так что при желании вы можете просто выполнить нужные вам действия, а программа запишет каждый ваш шаг.

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/4c757851-ac25-4b3b-9c13-2982edb1a74e/Untitled.jpg

Keyboard Maestro

Откройте списки триггеров и действий, чтобы получить представление о том, какие процессы возможно автоматизировать с помощью Keyboard Maestro. Вы можете управлять файлами, изображениями, приложениями, системным буфером обмена; вводить текст, воспроизводить музыку, просматривать системные уведомления, пользоваться веб-браузером Safari. Вероятно, вы не найдете такого процесса, который вы не сможете автоматизировать.

Инструмент Macro Recorder, о котором мы говорили ранее в разделе программ для Windows, также можно использовать на macOS. Вы можете бесплатно протестировать программу, чтобы решить, хотите ли вы приобрести полную версию программы за 50$. Она более простая в использовании, чем Automator и Keyboard Maestro. С помощью нее вы все равно сможете создать несколько довольно сложных макросов для своего удобства и экономии времени.

Подписывайся на Эксплойт в Telegram, чтобы не пропустить новые компьютерные трюки, хитрости смартфонов и секреты безопасности в интернете.

Читайте также: