Учимся работать с макросами в эксель, и программировать на VBA

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

Чтобы не повторять  одни и те же действия каждый раз  можно автоматизировать процесс и сэкономить время. Вы записываете свои действия (выделение ячеек документа, копирование, форматирование, ввод формул) в макрокоманду. Команда эта помещается в виде кнопки на панель инструментов. При нажатии кнопки все ваши записанные ранее действия выполняются автоматически. Это и есть «макрос».

image

Лично для меня знакомство  с  макросами в свое время превратилось в изучение программирования. Дело в том, что Microsoft Office является еще и легкой и понятной средой для этого. В нем есть свой встроенный язык — Visual Basic for Application или сокращенно VBA. И когда  записываете макросы, Вы  вы  как бы становитесь программистом. При этом не обязательно на первых этапах знать язык. Программный код можно посмотреть уже потом, в редакторе и изучать. Как смотреть — об этом так же расскажу.

image

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

Что означает макросы и как с ними работать?

Итак, макрос — это некий программный код, который описывает ПОСЛЕДОВАТЕЛЬНОСТЬ ваших действий в документе. Записывается даже перемещение  вашего курсора по ячейкам, нажатие клавиш. Сначала Вы записываете макрос. Когда понадобится, Вы в  Excel запускаете этот код на выполнение и все записанные ранее действия выполняются автоматически. Например, у Вас есть одна и та же таблица, макет  которой  Вы каждую неделю создаете по новый, меняете оформление, или очищаете графы. Вы нажимаете кнопку, и вот, то на что вы тратили 5-10 минут заняло у вас всего одну секунду.

Для начала нужно настроить Excel для работы с макросами. Это просто. На примере Office 2007 покажу как . В более поздних редакциях делается все почти аналогично. Сначала заходим в «Параметры»:

Сначала настроим «Ленту»;  нужно включить «Режим разработчика»:

Если Вы собираетесь серьезно работать с макросами — нужно включить еще одну настройку.  Здесь же переходим в «Центр управления безопасностью» и настраиваем «Параметры центра управления безопасностью»:

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

Так же нужно доверять доступ к объектной модели проектов VBA. Ведь в Интернете или у коллег можно найти много готовых и интересных проектов VBA написанных для Excel, Word и пользоваться.

Что такое макрос в Excel 2007?

Мы пока что научимся записывать несложные макросы. Сделать это очень просто. В «Ленте» у нас теперь появились соответствующие значки «Разработчик»:

В этом режиме нам будут доступны и остальные функции — «режим конструктора».  Можно самостоятельно  создавать окна, кнопки. А в редакторе Visual Basic можно редактировать созданные макросы. Итак, покажу, как все это работает. При нажатии кнопки «Запись макроса»  сначала нужно будет заполнить его наименование(без пробелов), горячие клавиши вызова (не обязательно) и место где он будет сохранен:

В зависимости от  поставленной задачи Вы можете сохранять макросы в отдельном документе либо в «личной книге». В первом случае он записывается в пределах документа и будет выполняться только в документе. Во втором случае его можно вызвать  перед созданием документа.  Лучше продемонстрировать наглядно, для чего бывают нужны макросы.  Задача: мне нужно создать: документ Excel, в документе создать таблицу определенного формата  и вычислениями внутри.  Смотрим видео, что получилось:

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

После окончания записи при закрытии  Excel программа обязательно попросит сохранить изменения в «Личной книге» макросов. Не забываем согласиться; в противном случае записанный  макрос пропадет и всё придется делать заново.

Важно! «Личная книга» макросов хранится в папке пользователя по пути C:Users%Пользователь компьютера%AppDataRoamingMicrosoftExcelXLSTART. Этой книгой можно делится с другими или удалять, если что то не получилось.

Наш макрос теперь доступен по кнопке «Макросы», оттуда его можно запускать.

Что  значит макрос в Excel 2016 и для чего он предназначен?

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

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

Для начала не забудем сделать настройки MSoffice 2016. Так же идем в «Параметры», но далее  идем в «Настроить ленту»

После «Разработчик» станет видимым на «Ленте». Переходим туда. Наша  личная книга макросов по прежнему на месте, откроем ее:

Запустим наш предыдущий макрос, любуемся, как программа сама создает и  заполняет таблицу. В нашем примере есть две графы «Количество» и «Цена», содержимое которых приходится очищать. Мы автоматизируем процесс.

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

Начинается программирование 😛 , из меню «Разработчик» вставляем кнопку в любое место нашего документа. Курсор измениться на перекрестье, затем рисуем кнопку в нужном месте:

Нашей кнопке будет автоматически назначен макрос. Имя макроса, комбинацию клавиш, ставим произвольное, сохраняем в «Этой книге». Это означает, что работать кнопка будет только в этом документе.

Далее, программа предложит способ создания макроса. Если Вы уже продвинутый VBA- програмиист, можно руками написать код, нажав «Создать». Но мы сегодня будем использовать уже знакомый нам способ — запись наших действий:

Запись начата! Мы собираемся очистить выбранные графы от содержимого, поэтому одновременно выделим нужные диапазоны в  графах «Количество» и «Цена». Для этого сначала выделим графу «Количество», затем зажимаем клавишу Ctrl и не отпуская ее выделяем нужные ячейки в графе  «Цена», после отпускаем клавишу:

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

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

Как и любой объект с кнопкой можно производить различные действия — копировать, удалять, форматировать, назначать им макросы. Мы пока что изменим наименование. Чтобы добраться до свойств кнопки нужно по ней щелкнуть правой кнопкой мыши:

Я  изменил текст на «Очистить». Цвет, размер текста шрифт в кнопках так же можно  менять по вкусу. Заглянем для этого в «Формат объекта»:

Там все  примерно так, как при форматировании ячейки. А изменять размеры самой кнопки и ее местоположение можно растягивая ее за края или перетаскивать:

Ну и на последок давайте заглянем в редактор VBA и посмотрим, как выглядит написанный нами программный код нашего макроса. Для этого  идем в наши «Макросы» , выбираем нужный и жмем «Войти» или «Изменить»:

Другой способ — можно  щелкнуть правой кнопкой мыши по кнопке и выбрать «Назначить макрос»; результат будет аналогичный. Открылся редактор VBA, в котором можно делать много чего интересного и полезного. Мы пока смотрим, что мы там напрограммировали:

Простой и понятный пример кода; после комментариев (выделенных зеленым) идет сам код «Выбрать диапазон ячеек сначала один, затем другой, затем   удаляем содержимое».  Закрыть редактор можно как обычное окошко — нажав на крестик. Надеюсь,  что такое макросы — Вы разобрались. Заодно узнали, как можно стать программистом.  Удачи в освоении программы!

Сервисы и программы Оглавление:

  • Что такое макрос простыми словами
  • Что такое макросы в Word, как настроить и найти макрос
  • Что такое макросы в Excel, как настроить
  • Как работать с макросами
  • Как создать запись макроса
  • Применение макросов в документе Ворд и Excel
  • Заключение

В статье рассмотрим вопрос, что такое макросы в Word  и в программе Excel. На практике будет показано, как использовать макросы. С помощью макросов вы сможете упростить работу с документами Майкрософт Офис Ворд.

Что такое макрос простыми словами

Здравствуйте, друзья! Начинающие пользователи программы Майкрософт Офис Ворд и других программ, задаются вопросом, что такое макрос? Ведь об этом названии впервые услышали, и хотелось бы рассмотреть его подробно.

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

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

Далее рассмотрим работу с макросами в Ворде и в программе Excel.

Что такое макросы в Word, как настроить и найти макрос

Что такое макросы в Word? Как говорилось ранее, это инструмент для записи действий (их программирование). Чтобы пользоваться макросом, необходимо его настроить и найти на панели управления в Ворде.

Для настройки макросов в Ворде откройте программу Word 2007 на компьютере или другую версию. Далее нажмите вверху слева на логотип программы и кликните по кнопке Параметры Word (скрин 1).

В основных настройках установите маркер перед словом «Показывать вкладку Разработчик на ленте» (скрин 2).

Это позволит вам найти инструмент Макросы. Также они находятся во вкладке «Вид».

Далее нажимаете кнопку «Центр управления безопасностью» и активируете раздел «Включить все макросы», внизу устанавливаете галочку – «Доверять доступ к объектной модели VBA» (скрин 3).

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

Что такое макросы в Excel, как настроить

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

Далее поработаем с макросами на практике.

Как работать с макросами

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

Итак, чтобы записать макрос в Ворде или в Excel, следуйте инструкции:

  1. Настройте макросы.
  2. Откройте документ.
  3. Нажмите по разделу разработчик и нажмите Записать макрос.
  4. Далее напишите что-нибудь в документе.
  5. После чего нажмите «Остановить запись».
  6. Затем откройте другой документ жмите на раздел «Разработчик» далее «Макросы».
  7. Выберите нужный макрос из списка и кликните кнопку «Выполнить». После чего программа вставит записанный текст автоматически.

Далее эту инструкцию разберем пошагово.

Как создать запись макроса

Чтобы записать макрос, запустите пустой текстовый документ или с текстом. Далее нажмите по разделу «Разработчик», затем кнопку «Запись макроса» (скрин 4).

В открытом окне пропишите имя макроса, установите кнопку «OK», чтобы началась запись. В процессе записи вы можете написать что-нибудь, например, Привет как дела? Далее нажмите кнопку «Остановить запись» и сохраните документ.

Программа Excel работает с макросами так же, как и Ворд. Нажимаете на вкладку «Разработчик», далее «Запись макроса» (скрин 5).

Затем заполняете таблицу, останавливаете запись макроса и снова сохраняете документ.

Далее разберем, как записанный макрос применять в Ворде и Excel.

Применение макросов в документе Ворд и Excel

Итак, чтобы применить макросы в Ворде, нажмите раздел «Разработчик» в новом документе. Далее кликните «Макросы». Из списка макросов выберите тот, который ранее использовали и нажмите кнопку «Выполнить» (скрин 6).

После этого записанный текст макросом будет вставлен в документ.

Как работает макрос в Excel? Все просто. Также нажимаете кнопку «Разработчик» далее «Макрос». Выбираете макросы и жмете по ним. Затем, надо нажать кнопку «Выполнить», чтобы записанный текст или числа вставились в таблицу.

Заключение

Сегодня был показано на практике, что такое макросы в Word  и программе Excel. Аналогично, макросы работают и Power Point. Макрос – это простой инструмент для записи действий в документах. Вы можете один раз записать какой-нибудь текст, чтобы потом его не переписывать заново. Это намного лучше, чем тратить время на лишнюю работу.

Спасибо за внимание!

С уважением, Иван Кунпан.

Статьи по Ворду:

Рисование в Ворде, нумерация таблиц в Ворде, как создать диаграмму в Ворд, как пронумеровать строки в Ворде.

Просмотров: 2046

Введение

Зачастую нам приходится выполнять одни и те же действия в Excel большое количество раз. C такой «рутинной работой» рано или поздно сталкивается почти каждый пользователь Excel — формирование ежедневных и еженедельных отчетов, обработка однообразных данных и т.д.

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

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

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

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

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

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

Чтобы записать макрос в Excel нужно в нижней панели нажать на кнопку «Запись макроса» или перейти в панели инструментов на вкладку «Вид» в группу «Макросы» и выбрать «Запись макроса»:

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

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

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

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

Остановить запись макроса можно двумя способами: в нижней панели нажать на кнопку «Остановить запись» или перейти в панели инструментов на вкладку «Вид» в группу «Макросы» и выбрать «Остановить запись»:

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

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

Чтобы выполнить и запустить макрос можно нажать выбранное сочетание клавиш или перейти на вкладку «Вид» в группу «Макросы», выбрать «Макросы» и нажать кнопку «Выполнить» или нажать сочетание клавиш Alt+F8:

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

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

Для просмотра кода макроса нужно перейти на вкладку «Вид» в группу «Макросы» и выбрать «Макросы»,а затем нажать кнопку «Изменить»:

Код макроса

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

Резюме

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

  1. Создание макроса. Выбрать на панели инструментов «Вид» -> «Макросы» -> «Запись макроса» и при необходимости заполнить настройки макроса;
  2. Запись макроса. Выполнить требуемые действия;
  3. Остановить запись макроса. Выбрать на панели инструментов «Вид» -> «Макросы» -> «Остановить запись».

Удачи вам и до скорых встреч на страницах блога Tutorexcel.ru!

Поделиться с друзьями:
Поиск по сайту:

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

Содержание

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

Всего можно задать макрос двумя способами:

  • Автоматически;
  • Вручную.

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

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

Включение автоматической записи макросов

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

Здесь же будет предоставлена только краткая инструкция по их включению:

  1. Откройте табличный редактор MS Excel и нажмите на кнопку «Файл», что расположена в верхней части окна.
  2. Здесь, в левом меню, выберите пункт «Параметры».
  3. В новом окне перейдите ко вкладке «Настройка ленты».
  4. Далее обратите внимание на то, чтобы в левом окошке обязательно стояла галочка у пункта «Разработчик». Если её там нет, то поставьте и нажмите «Ок».
  5. Теперь в верхнем меню таблицы должен появится раздел «Разработчик». Перейдите в него.
  6. Там должна быть кнопка в виде восклицательного знака в жёлтом треугольнике. Нажмите на неё.
  7. В новом окне откройте раздел «Параметры макросов». В нём обязательно установите переключатель у пункта «Включить все макросы». Здесь вы также можете увидеть предупреждение, что запуск этой опции не рекомендуется, так как при неумелом использовании возможно проникновение/запуск опасной программы.
  8. Нажмите «Ок». Всё, теперь макросы в MS Excel включены. При необходимости вы можете отключить их в любой момент.

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

  1. Снова перейдите во вкладку «Разработчик», которая должна была появится после выполнения предыдущей инструкции.
  2. Здесь нажмите на кнопку «Запись макроса». Она расположена в блоке «Код» и в некоторых версиях может быть без подписи, поэтому смотрите её расположение на скриншоте ниже. Оно не меняется в зависимости от версии продукта.
  3. Появится окошко, в котором вам нужно указать имя для макроса. По умолчанию оно звучит как «Макрос1». Если оно вам не нравится по каким-либо причинам, вы можете сменить его. В имени разрешено использовать нелатинские символы. Главное условие, чтобы название не начиналось с цифры и не содержало пробелов.
  4. В этом же окошке вы можете установить сочетание клавиш, отвечающих за вызов вашего макроса. По умолчанию первой клавишей всегда будет стоять Ctrl, а за ней можно прописать любую. Давайте в качестве примера поставим «M». Здесь желательно избегать сочетаний клавиш, которые уже используются по умолчанию в Excel, например, Ctrl+Z, Ctrl+C, Ctrl+V, Ctrl+A и т.д. Их лучше не устанавливать.
  5. Ниже программа запросит, где сохранять макрос. По умолчанию он будет сохраняться в этом же файле (который в программе называется «книга»). Вы можете назначить в качестве места для сохранения макроса другую книгу, выделить все макросы в отдельную книгу. Мы же оставим этот параметр по умолчанию.
  6. При желании можно составить описание для вашего макроса, но это совершенно необязательно. В описании можно использовать любые символы, пробелы.
  7. Когда закончите с настройкой макроса нажмите кнопку «Ок».

После этого включится автоматическая запись действий для встроенного в программу макроса. Будут записываться все ваши действия в программе до тех пор, пока вы не остановите запись. Давайте для примера создадим макрос, который будет при запуске складывать содержимое нескольких ячеек. В нашем случае формула для макроса будет выглядеть так: =C4+C5+C6.

На нашем сайте есть вводная статья по работе с формулами в Excel. Если вы сейчас плохо понимаете, о чём идёт речь, то рекомендуем ознакомиться с данным материалом по ссылке.

Давайте запишем наш первый макрос:

  1. Выделите ячейку, в которой будет записана формула.
  2. Пропишите формулу. В данном случае это формула вида a+b+c. Вместо букв потребуется вставить номера ячеек. Вид формулы можете посмотреть выше или перейти по ссылке с отдельной статьёй. Помните, что ячейки, которые вы указываете в формуле, не должны быть пустыми. В противном случае вместо решения вы получите ошибку.
  3. Макрос записал ваше действие с формулой. Нажмите Enter, чтобы она посчиталась.
  4. Теперь можете остановить запись макроса. Для этого перейдите в раздел «Разработчик» и нажмите на кнопку «Остановить запись». В некоторых версиях табличного редактора данная кнопка может быть не подписана. Тогда смотрите её расположение на скриншоте.

Запускаем макрос

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

  1. Снова откройте вкладку «Разработчик» и там найдите большую кнопку «Макросы». Она расположена в блоке «Код». Также вы можете воспользоваться сочетанием клавиш Alt+F8.
  2. Откроется окошко, в котором будет представлен список всех ранее записанных макросов. Найдите среди них макрос, который был записан ранее и нажмите на кнопку «Выполнить». Так как у нас один макрос, то с этим проблем возникнуть не должно.

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

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

Редактируем макрос

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

  1. Перейдите во вкладку «Разработчик», а затем откройте «Макросы» или воспользуйтесь комбинацией клавиш Alt+F8.
  2. В появившемся окошке работы с макросами выберите тот, который вы недавно создали и нажмите на кнопку «Изменить», что расположена в левой части окна.
  3. Откроется среда разработки Microsoft Visual Basic (VBE). Она используется для редактирования макросов, а также создания некоторых других элементов. Чтобы комфортно работать с кодом вам нужно знать язык программирования Basic, а ещё лучше его адаптацию под эту среду разработки. Чтобы вам было проще понимать принцип работы макроса, мы рассмотрим основные элементы синтаксиса:
    • Sub – это команда отвечающая за начало записи макроса. Она обязательно стоит в самом начале, затем идёт наименование макроса, которое задал пользователь, а затем сам код макроса;
    • End Sub. Стоит в самом конце кода. Отвечает за остановку записи, следовательно, и выполнения макроса;
    • Range(«…»).Select. Это оператор, отвечающий за выбор ячейки. Например, команда Range(«A1»).Select выберет ячейку с идентификатором A1;
    • ActiveCell.FormulaR1C1. Отвечает за работу с формулами, которые используются при записи макроса. Также может быть использовано для других расчётов.
  4. В качестве примера попробуем сделать так, чтобы макрос выполнял расчёты для четырёх ячеек, а не трёх, как ранее. Изначально пропишем Range(«идентификатор ячейки»).Select, чтобы выбралась нужная нам ячейка.
  5. Под строкой с этой командой нужно будет прописать ActiveCell.FormulaR1C1 = «58». Вместо 58 вы можете взять любое число.
  6. Также выражение ActiveCell.FormulaR1C1 = «=R[-3]C+R[-2]C+R[-1]C», что расположено в предпоследней строчке, нужно будет заменить на ActiveCell.FormulaR1C1 = «= R[-4]C+R[-3]C+R[-2]C+R[-1]C», чтобы наша формула окончательно заработала.
  7. Закройте редактор и запустите выполнение макроса по аналогии с инструкцией, которая была дана выше.

В итоге у вас должно получится, что в формулу добавится ещё одна ячейка, а в ней будет число 1158 или любое, которое вы зададите. При выполнении макроса вы получите указанные ячейки заполненными, а формулу посчитанной.

Во время работы с большими макросами вы можете столкнуться с тем, что его выполнение занимает много времени, а также потребляет значительную часть ресурсов машины. Обычно, данная проблема больше актуальна для старых компьютеров. Если вы хотите ускорить процесс выполнения, то в код придётся добавить команду Application.ScreenUpdating = False. Она отвечает за выполнение обновления экрана во время вычислительных действий. Если у неё после равно стоит значение «False», то обновление экрана после каждого действия макроса будет отключено, что позволит значительно сократить потребление вычислительных ресурсов компьютера. В конце вы только увидите результат вычисления.

Читайте также: Пошаговая инструкция включения или отключения макросов в Excel Поиск и удалени циклических ссылок в Excel (Эксель) Умная таблица в Excel (Эксель): создание и использование Как сделать таблицу в Microsoft Excel

Для возобновления обновления экрана после выполнения каждой задачи следует прописать команду Application.ScreenUpdating = True.

Также для оптимизации работы макросов в Excel можно воспользоваться командой Application.Calculation = xlCalculationManual, которая ставится в начальной позиции кода (примерное расположение отмечено на скриншоте). В конце кода вам нужно будет написать команду Application.Calculation = xlCalculationAutomatic. Первая команда отключит автоматический пересчёт результата после каждого изменения в ячейках, а вторая наоборот, включит его, но только уже после выполнения основной части макроса. Благодаря этому Excel будет считать результат только один раз, а не после каждого выполненного действия, что значительно сэкономит время и ресурсы. Правда, иногда подобного рода команды могут исказить результат подсчёта, поэтому в определённых условиях от использования этой команды приходится отказаться.

Создание макроса с чистого листа

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

  1. Перейдите во вкладку «Разработчик» и нажмите там на кнопку «Visual Basic».
  2. Откроется среда разработки, в которую вам и нужно будет прописывать код. Он пишется вручную, но некоторые плагины для офисного пакета Майкрософт могут значительно ускорить написание макросов.

Сами макросы позволяют значительно ускорить процесс работы в Excel и сопутствующих продуктах. В основном они завязана на автоматизации рутинных процессов, которые постоянно повторятся и никак (или почти никак) не меняются. Макросы можно записать без знаний кода и отредактировать/оптимизировать их, если имеются базовые представления о синтаксисе Basic. Если у вас имеются какие-либо вопросы по статье или предложения, то напишите их в комментариях ниже.

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

Что представляют собой Excel-макросы?

Макросы используются не только в таблицах, но и во всем Microsoft Office. Они представляют собой созданный при помощи Visual Basic for Applications код. Если вы частично знакомы с web-программированием, то можно провести аналогию с Javascript. Excel-макросы делают примерно то же самое, что и Javascript с данными формата HTML.

Небольшая часть того, что может сделать макрос в офисных приложениях:

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

Чем могут быть опасны макросы в Excel?

Программисты не рекомендуют использование написанных другими людьми макросов, так как они могут быть опасными для ваших данных и ПК в целом. «Макровирусы» являются очень распространенным видом хакерства. Они способны:

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

Еще один способ работы вредоносного макроса – посредничество для внедрения угроз в систему. В этом случае он является своеобразными воротами для внедрения и генерирования троянского ПО. Им уже будет управлять не видоизменённый макрос, а сама операционная система, а следовательно, угроза становится более масштабной. Не всегда получается вылечить такие вирусы, иногда приходится полностью менять Windows OC или жесткий диск ПК (в зависимости от задач, которые ставил хакер при написании кода).

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

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

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

Наиболее простой способ создания макроса – программирование прямо в Excel. Для этого вам понадобится таблица с внесенными данными и немного знаний, чтобы включить запись такого кода в программе.

Создание начинается с меню «Вид». В нем нужно выбрать позицию «Макросы» и команду «Записать Макрос». Далее нужно задать имя без пробелов, например, «Format» (если код будет отвечать за изменение формата текста или ячеек).

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

Как включить макросы в Excel

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

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

Как увидеть программный код макроса?

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

Для этого нужно последовательно выполнить команды:

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

Как начать работу макроса по клику на ячейку

Допустим, вы хотите, чтобы при выделении ячейки А1 запускалась работа макроса. Чтобы выбранная в Excel ячейка макрос запускала, необходимо в первый модуль добавить программный код:

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

Где можно научиться работать с макросами

Есть несколько способов научиться созданию более сложных макросов. Они должны отличаться логикой и четко настроенной последовательностью действий. Создаются такие макросы только путем написания кода VBA вручную. Для создания сложных макросов вам потребуется затратить некоторое время на изучения тонкостей языка программирования Visual Basik.

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

Примеры

Существуют коды, которые позволяют добиться автоматизации различных задач. Итак, в качестве примера рассмотрим макрос вставки строки. Выглядит он следующим образом:

Sub Макрос1()

Rows(2).EntireRow.Insert

End Sub

Похожие статьи

Оцените статью
Рейтинг автора
5
Материал подготовил
Илья Коршунов
Наш эксперт
Написано статей
134
А как считаете Вы?
Напишите в комментариях, что вы думаете – согласны
ли со статьей или есть что добавить?
Добавить комментарий