Разное

Excel создать макрос: Разработка макросов в Excel на заказ

Содержание

Как работать с макросами в Excel 2010 без программирования кода

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

Вам даже не нужно быть программистом и знать язык программирования «VBA» чтобы создавать свои макро-программы с помощью инструмента записи макросов.

Сначала надо включить панель разработчика. Для этого в меню «Файл» открываем группу опций «Параметры». В появившемся окне «Параметры Excel» открываем группу «Настройка ленты». Обратите внимание на правую колонку настроек под аналогичным названием «Настройка ленты». В ней следует отметить галочкой опцию «Разработчик» как показано ниже на рисунке:

Теперь нам доступна на ленте новая закладка «Разработчик» со всеми своими инструментами для автоматизации работы в Excel и создания макросов.

Применение VBA и макросов в Microsoft Excel

Макросы – это внутренние приложения, которые берут на себя всю рутинную работу, облегчая жизнь пользователю. Каждый пользователь может создать макрос без знания языков программирования. Для этого существует макрорекодер, который запускается с помощью кнопки «Запись макроса».

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

Как записать готовый макрос в Excel? Очень просто:

  1. На вкладке «Разработчик» нажимаем кнопку «Запись макроса».
  2. В появившимся диалоговом окне заполняем параметры макроса. И нажимаем «ОК».
  3. После завершения нажимаем на кнопку «Остановить запись», после чего макрос будет автоматически сохранен.
  4. Для выполнения или редактирования записанного макроса нажимаем на кнопку «Макросы» (или комбинацию клавиш ALT+F8). Появится окно со списком записанных макросов и кнопками для управления ими.

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



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

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

1 Правильные имена в макросах.

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

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

2 Используйте относительные (не абсолютные) адреса ячеек

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

По умолчанию в Excel включен режим «Абсолют», но вы можете изменить его, включив кнопку «Относительные ссылки» расположенную ниже под кнопкой «Запись макроса» на панели инструментов вкладки «Разработчик»:

3 Всегда начинайте запись с курсором в A1

Абсолютный отсчет ячеек, всегда ведется с исходного положения (адрес ячейки А1) – до адреса курсора с вашими данными. Если вы сохранили ваш макрос в книге личных макросов (рекомендуется так и делать), то вы можете использовать свою программу на других листах с аналогичными данными. Независимо от того, где ваш курсор позиционируется, когда вы начинаете запись макроса! Даже если он уже находится в ячейке A1, ваш первый макрос лучше записывать после нажатия клавиш должны быть Ctrl + Home.

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

4 Всегда перемещаться с клавиш направления в момент записи макроса

Используйте кнопки со стрелками для управления курсором (Ctrl + Up, и т.п.). Позиционируйте курсор, так чтобы вы могли добавить, изменить или удалить данные внутри таблицы по мере необходимости.

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

5 Создавайте макросы для конкретных небольших задач

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

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

Если нельзя разбить длинный макрос на короткие приложения, а требуется проверить его функциональность пошагово («отладкой»). Нажмите клавишу F8 каждый раз, когда вы хотите перейти к следующему шагу выполнения задачи. Процесс выполнения программы останавливается, когда он видит ошибку. Вы можете исправить ошибку, которую легко найти с помощью «отладки» или записать по-новому.

Макросы Excel — Создание — CoderLessons.com

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

Предположим, вам необходимо повторно собирать определенные результаты в следующем формате:

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

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

Для записи макроса выполните следующие действия:

  • Нажмите вкладку VIEW на ленте.
  • Нажмите Макросы в группе Макросы.
  • Выберите Record Macro из выпадающего списка.

Откроется диалоговое окно « Запись макроса ».

  • Введите MyFirstMacro в поле Имя макроса.

  • Введите «Простой макрос» в поле «Описание» и нажмите «ОК».

Введите MyFirstMacro в поле Имя макроса.

Введите «Простой макрос» в поле «Описание» и нажмите «ОК».

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

  • Нажмите в ячейке B2.

  • Создать таблицу.

  • Нажмите в другой ячейке на листе.

  • Нажмите вкладку VIEW на ленте.

  • Нажмите Макросы.

  • Выберите Остановить запись из выпадающего списка.

Нажмите в ячейке B2.

Создать таблицу.

Нажмите в другой ячейке на листе.

Нажмите вкладку VIEW на ленте.

Нажмите Макросы.

Выберите Остановить запись из выпадающего списка.

Ваша запись макроса завершена.

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

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

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

  • Нажмите на новый лист.

Обратите внимание на активную ячейку. В нашем случае это А1.

  • Нажмите вкладку VIEW на ленте.

  • Нажмите Макросы .

  • Выберите View Macros из выпадающего списка.

Нажмите вкладку VIEW на ленте.

Нажмите Макросы .

Выберите View Macros из выпадающего списка.

Откроется диалоговое окно «Макрос».

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

  • Щелкните имя макроса — MyFirstMacro в диалоговом окне «Макрос». Будет отображено описание, введенное вами во время записи макроса. Описание макроса позволяет определить, для какой цели вы записали макрос.

  • Нажмите кнопку «Выполнить». Та же самая таблица, которую вы создали во время записи макроса, появится за доли секунды.

Щелкните имя макроса — MyFirstMacro в диалоговом окне «Макрос». Будет отображено описание, введенное вами во время записи макроса. Описание макроса позволяет определить, для какой цели вы записали макрос.

Нажмите кнопку «Выполнить». Та же самая таблица, которую вы создали во время записи макроса, появится за доли секунды.

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

  • Хотя активной ячейкой перед запуском макроса была A1, таблица помещается в ячейку B2, как вы записали.

  • Кроме того, активной ячейкой стала E2, так как вы щелкнули по этой ячейке, прежде чем прекратили запись.

Хотя активной ячейкой перед запуском макроса была A1, таблица помещается в ячейку B2, как вы записали.

Кроме того, активной ячейкой стала E2, так как вы щелкнули по этой ячейке, прежде чем прекратили запись.

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

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

Хранение макроса

Вы можете задаться вопросом, как сохранить созданные макросы. В этом контексте вам нужно знать —

  • Хранение макроса
  • Сохранение файла с макросами

Как и при создании макроса, вы можете выбрать, где хранить этот конкретный макрос. Вы можете сделать это в диалоговом окне « Запись макроса ».

Установите флажок — Хранить макрос в . Доступны следующие три варианта:

  • Это рабочая тетрадь.
  • Новая рабочая тетрадь.
  • Личная Макро Книга

Эта рабочая тетрадь

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

Новая рабочая книга

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

Личная Макро Книга

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

Сохранение файла с макросами

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

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

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

  • Нажмите Нет в окне с предупреждением.
  • Выберите Excel Macro-Enabled Workbook (* .xlsm) в типе Сохранить как.
  • Нажмите Сохранить.

Вы узнаете больше об этом в последующих главах этого урока.

Работа с макросами в Microsoft Excel

«Макросы» — это макрокоманда с определенной последовательностью записанных пользователем действий. Для используются макросы в Excel? Это отличное спасение от рутинного выполнения одинаковых действий. К примеру, каждый день вы редактируете шаблонные отчеты, удаляя из них столбцы и добавляя в шапке по несколько строчек. Теперь этот процесс можно автоматизировать и что немаловажно – для этого не потребуется ни единого навыка программирования.

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

id=»a1″>

  1. Excel 2003: «Сервис/Безопасность/Уровень «Низкий».
  2. Excel 2007: Жмите на кнопку «Office», после – «Параметры Excel». Далее «Центр управления безопасностью/Параметры/Разрешить все».

  3. Excel 2010: «Файл/Параметры», а далее все также как в пункте выше.
  4. В Excel 2013 эта функция активируется по аналогии с предыдущими.

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

Фиксируются только действия совершенные в программе и лишь те, которые можно сделать вручную (т.е. команды для них находятся в главном меню). Если при написании кода была совершена ошибка, вы можете удалить её сочетанием Ctrl+Z.

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

id=»a2″>

Пользователям, работающим с Эксель 2003 версии, следует запустить «Сервис/Макрос/Начать запись».

Если у вас установлен Microsoft Excel 2007 и более поздние выпуски, воспользуйтесь инструкцией ниже:

  • Запуск через вкладку «Разработчик»: Группа Код/Запись.

  • Через строку состояния: нажмите кнопку «Запись макроса».

Как запустить созданный макрос

id=»a3″>

Вы можете воспользоваться любым их указанных методов:

  1. Нажать сочетание Alt+F8.
  2. Вызвать из меню: «Разработчик/Макросы».
  3. С помощью горячих клавиш, назначенных объекту.
  4. При включении определенной процедуры на листе.

Показать видеоинструкцию

Видеоинструкция

Ответы на другие вопросы:

Создание макросов в Excel с нуля на видеокурсе от Loftblog

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

Итак, создадим для начала новый файл в Excel, а затем сохраним его, нажав клавишу F12 и выбрав тип файла «книга Excel с поддержкой макросов (*.xlsm)». Такой тип расширения позволит вам в дальнейшем запускать Excel со встроенными макросами.

Создание макросов в Excel — работа в редакторе

Открываем редактор VBE, нажимая Alt+F11, и создаем модуль, выбирая Insert –> Module. Код нашего макроса:

Sub information()

‘создание нового листа
‘объект.действия
Worksheets.Add

‘вывести имя в ячейку
‘объект.свойство
range(“A1”).Value = «Пользователь:”
range(«B1»).Value = Application.UserName

‘ввод даты
range(“A2”). Value = «Дата:”
range(«B2»).Value = Date

‘форматирование
range(«A1:A2»).Font.Color = vbRed
range(«A1:A2»).Interior.Color = rgbLightCoral

End Sub


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

Sub information()

 

‘создание нового листа

‘объект.действия

Worksheets.Add

 

‘вывести имя в ячейку

‘объект.свойство

range(“A1”).Value = «Пользователь:”

range(«B1»).Value = Application.UserName

 

‘ввод даты

range(“A2”). Value = «Дата:”

range(«B2»).Value = Date

 

‘форматирование

range(«A1:A2»).Font.Color = vbRed

range(«A1:A2»).Interior.Color = rgbLightCoral

 

End Sub

Создание макросов в Excel — разбор кода

Строка (1) Sub information() означает при создании макросов в Excel начало макроса с именем information.

Строка (3) ‘создание нового листа – строка, вначале которой стоит знак носит пояснительный характер, то есть является комментарием.

Строка (4) объект.действия отражает в виде комментария синтаксис команд.

Строка (5) Worksheets.Add – команда добавления листа при создании макросов в Excel.

Строка (9) range(“A1”). Value = «Пользователь:» означает, что ячейке A1 присваивается значение Пользователь.

Строка (9) range(«B1»).Value = Application.UserName говорит о том, что ячейке В1 присваивается значение Application.UserName. Это означает, что программа Excel вписывает в указанную ячейку имя пользователя на вашем компьютере. Аналогичная последовательность операций проводится и с выводом даты в ячейку – строки (13-14).

В строках (17-18) написаны команды для форматирования ячеек, то есть строка range(«A1:A2»).Font.Color = vbRed говорит, что диапазону ячеек A1:A2 со свойством Шрифт (Font) изменим параметр Цвет (Color) на красный (vbred).

Аналогично со строкой range(«A1:A2»).Interior.Color = rgbLightCoral, которая означает, что заливку ячеек мы меняем на светло-розовую.

Напоминание: чтобы запустить макрос построчно не забывайте нажимать F8!

На этом все! Сегодня вы большие молодцы, так как сами написали свой первый макрос. Как видите, это не так страшно, как казалось на первый взгляд.

Приятного всем просмотра! Учитесь с удовольствием! Всегда ваш LoftBlog!

Рекомендуемые курсы

Макросы в excel 2010 как сделать

     Добрый день!

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

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

     Если вы никогда не слышали о макросе, то самым точным его определением будет таким, это действия которые запрограммированы на определённую последовательность и записаны в среде программирования на языке Visual Basic for Applications (VBA). Запуск макроса может производиться многократно и это заставит Excel выполнять любую последовательность необходимых нам действий, которые вручную выполнять нам просто не нравится или не хочется. Несмотря на великое множество языков программирования для всего комплекса Microsoft Office стандартом является именно VBA и он работает в любом приложении офисного пакета.

     Итак, создать макрос в Excel возможно 2 способами:

  1. Создать макрос в Excel с помощью макрорекордера;
  2. Создать макрос в Excel в редакторе Visual Basic.

Создать макрос в Excel с помощью макрорекордера

     Для начала проясним, что собой представляет макрорекордер и при чём тут макрос.

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

     Этот способ очень полезен тем, кто не владеет навыками и знаниями работы в языковой среде VBA. Но такая легкость в исполнении и записи макроса имеет свои минусы, как и плюсы:

  • Записать макрорекордер может только то, что может пощупать, а значит записывать действия он может только в том случае, когда используются кнопки, иконки, команды меню и всё в этом духе, такие варианты как сортировка по цвету для него недоступна;
  • В случае, когда в период записи была допущена ошибка, она также запишется. Но можно кнопкой отмены последнего действия, стереть последнюю команду которую вы неправильно записали на VBA;
  • Запись в макрорекордере проводится только в границах окна MS Excel и в случае, когда вы закроете программу или включите другую, запись будет остановлена и перестанет выполняться.

      Для включения макрорекордера на запись необходимо произвести следующие действия:

  • в версии Excel от 2007 и к более новым вам нужно на вкладке «Разработчик» нажать кнопочку «Запись макроса»;
  • в версиях Excel от 2003 и к более старым (они еще очень часто используются) вам нужно в меню «Сервис» выбрать пункт «Макрос» и нажать кнопку «Начать запись».

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

  • поле «Имя макроса» — можете прописать понятное вам имя на любом языке, но должно начинаться с буквы и не содержать в себе знаком препинания и пробелы;
  • поле «Сочетание клавиш» — будет вами использоваться, в дальнейшем, для быстрого старта вашего макроса. В случае, когда вам нужно будет прописать новое сочетание горячих клавиш, то эта возможность будет доступна в меню «Сервис» — «Макрос» — «Макросы» — «Выполнить» или же на вкладке «Разработчик» нажав кнопочку «Макросы»;
  • поле «Сохранить в…» — вы можете задать то место, куда будет сохранен (но не послан) текст макроса, а это 3 варианта:
    • «Эта книга» — макрос будет записан в модуль текущей книги и сможет быть выполнен только в случае, когда данная книга Excel будет открыта;
    • «Новая книга» — макрос будет сохранен в тот шаблон, на основе которого в Excel создается пустая новая книга, а это значит, что макрос станет доступен во всех книгах, которые будут создаваться на этом компьютере с этого момента;
    • «Личная книга макросов» — является специальной книгой макросов Excel, которая называется «Personal.xls» и используется как специальное хранилище-библиотека макросов. При старте макросы из книги «Personal.xls» загружаются в память и могут быть запущены в любой книге в любой момент.
  • поле «Описание» — здесь вы можете описать, что и как должен делать макрос, для чего он создавался и какие функции несет, это чисто информативное поле, что называется на память.

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

Создать макрос в Excel в редакторе Visual Basic.

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

    Запуск редактора программ на VBA происходит по-разному, в зависимости от версии вашей программы Excel:

  • в версиях Excel 2003 и более старше, нам нужно в меню «Сервис», выбрать пункт «Макрос» и нажать «Редактор Visual Basic»;
  • в версиях Excel 2007 и более новее, нам нужно на вкладке «Разработчик» нажать кнопку «Редактор Visual Basic». В случае когда вы не находите эту вкладку вам нужно ее активировать выбрав пункт меню «Файл» — «Параметры» — «Настройка ленты» и в диалоговом окне флажком активируем вкладку «Разработчик».

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

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

     Все наши макросы будут храниться в так называемых программных модулях. В любой из книг любой версии Excel нам доступно создание любых программных модулей в любом количестве и размещать в них все созданные нами макросы. Один модуль в состоянии содержать в себе любое количество нужных вам или созданных макросов. Модули доступны в окне «Project Explorer» и размещаются в верхнем левом углу редактора макросов (так же его можно вызвать комбинацией клавиш CTRL+R).

     Программные модули в редакторе VBA существуют в нескольких видах и используются для разных вариантов и ситуаций:

  • Обычные модули – самый распространённый вариант при создании макросов. Если вам нужно создание именно такого модуля, тогда выберете в пункте меню «Insert», пункт «Module». В открывшемся новом пустом окне нового модуля теперь можно вводить нужные команды на VBA посредством клавиатуры или же попросту копируя их с других источников, например с моего сайта;
  • Модуль «Эта книга» — размещен там же где и предыдущий в том же окне «Project Explorer» и в данный модуль сохраняют макросы, которые срабатывают при определенных действиях, которые имеют место в книге Excel, это могут быть отправка файла на печать, открытие или закрытие документа и т.п.
  • Модуль листа – может быть доступен там, где и предыдущие, а также через контекстное меню ярлыка листа, выбрав пункт «Исходный текст». В этот модуль записывают те макросы, которые нужно исполнять при выполнении событий на листе, такие как пересчёт листа, изменение данных в ячейке, удаление или копирование листа ну и т.д.

     Собственно сам макрос при работе в стандартном модуле выглядит следующим образом:

     Рассмотрим на примере работающего макроса «Расширенный фильтр»:

  • Все макросы в обязательном порядке будут начинаться с оператора Sub, после которого следует имя вашего макроса и список аргументов в скобочках. В случаях, когда аргументы отсутствуют скобки нужно оставить пустыми;
  • В обязательном порядке все макросы заканчиваются оператором End Sub;
  • Данные что находятся между операторами Sub и End Sub, является телом макроса, которое будет работать при запуске макроса. В примере, макрос проверяет диапазон данных и при вводе данных находит их в списке базы данных и накладывает фильтр, выводя указанное по критериям значение.

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

Создание кнопки для запуска макросов в панели инструментов

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

  1. Кнопка в панели инструментов в MS Excel 2003 и более старше. Вам нужно в меню «Сервис» в пункте «Настройки» перейти на доступную вкладку «Команды» и в окне «Категории» выбрать команду «Настраиваемая кнопка» обозначена жёлтым колобком или смайликом, кому как понятней или удобней. Вытащите эту кнопку на свою панель задач и, нажав правую кнопку мыши по кнопке, вызовите ее контекстное меню, в котором вы сможете отредактировать под свои задачи кнопку, указав для нее новую иконку, имя и назначив нужный макрос.
  2. Кнопка в панели вашего быстрого доступа в MS Excel 2007 и более новее. Вам нужно клацнуть правой кнопкой мышки на панели быстрого доступа, которое находится в верхнем левом углу окна MS Excel и в открывшемся контекстном меню выбираете пункт «Настройка панели быстрого доступа». В диалоговом окне настройки вы выбираете категорию «Макросы» и с помощью кнопки «Добавить» вы переносите выбранный со списка макрос в другую половинку окна для дальнейшего закрепления этой команды на вашей панели быстрого доступа.

    Создание графической кнопки на листе Excel

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

  • В MS Excel 2003 и более старше переходите в меню «Вид», выбираете «Панель инструментов» и нажимаете кнопку «Формы».
  • В MS Excel 2007 и более новее вам нужно на вкладке «Разработчик» открыть выпадающее меню «Вставить» и выбрать объект «Кнопка».

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

Как создать пользовательские функции на VBA

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

     К примеру, для создания пользовательской функции налога на добавленную стоимость, он же НДС, нам нужно открыть наш редактор VBA и добавить новый модуль, выбрать в меню «Insert» пункт «Module» и ввести туда текст для нашей функции:      Следует заметить, что главное отличие функции от макроса это заголовок Function заменило Sub и в наличии заполненный список аргументов, в нашем примере это Summa. После того как наш код будет введен, он станет доступен в стандартном окне Мастера функций, который находится в меню «Формулы», пункт «Вставить функцию».        И выбираем категорию «Определенные пользователем» в которой и будет отображаться наша написанная функция «NDS».      После выбора нашей функции можно установить курсор на ячейку с аргументом, в которой будет содержаться та сумма, для которой мы считаем НДС, всё происходит, как и с обычной функцией.        А на этом у меня всё! Я очень надеюсь что статья о том как создать макрос в Excel вам была понятной и полезной. Буду очень благодарен за оставленные комментарии, так как это показатель читаемости и вдохновляет на написание новых статей! Делитесь с друзьями прочитанным и ставьте лайк!

      P.S. Если вам очень интересно как работает макрос и где он применяется. С примерами вы сможете ознакомиться у меня на сайте в следующих статьях:

  1. «Как использовать расширенный фильтр в Excel»
  2. «8 способов как сравнить две таблицы в Excel»
  3. «5 вариантов, как удалить пустые строки в Excel»
  4. «Как скрыть в Excel значение ячеек»
  5. «5 быстрых способов как заменить точки на запятые в Excel»
  6. «Как правильно скрыть лист в Excel»

       Не забудьте поблагодарить автора!

Не уметь переносить бедность постыдно; не уметь избавиться от неё трудом – ещё постыднее. Перикл

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

Вам даже не нужно быть программистом и знать язык программирования «VBA» чтобы создавать свои макро-программы с помощью инструмента записи макросов.

Сначала надо включить панель разработчика. Для этого в меню «Файл» открываем группу опций «Параметры». В появившемся окне «Параметры Excel» открываем группу «Настройка ленты». Обратите внимание на правую колонку настроек под аналогичным названием «Настройка ленты». В ней следует отметить галочкой опцию «Разработчик» как показано ниже на рисунке:

Теперь нам доступна на ленте новая закладка «Разработчик» со всеми своими инструментами для автоматизации работы в Excel и создания макросов.

Применение VBA и макросов в Microsoft Excel

Макросы – это внутренние приложения, которые берут на себя всю рутинную работу, облегчая жизнь пользователю. Каждый пользователь может создать макрос без знания языков программирования. Для этого существует макрорекодер, который запускается с помощью кнопки «Запись макроса».

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

Как записать готовый макрос в Excel? Очень просто:

  1. На вкладке «Разработчик» нажимаем кнопку «Запись макроса».
  2. В появившимся диалоговом окне заполняем параметры макроса. И нажимаем «ОК».
  3. После завершения нажимаем на кнопку «Остановить запись», после чего макрос будет автоматически сохранен.
  4. Для выполнения или редактирования записанного макроса нажимаем на кнопку «Макросы» (или комбинацию клавиш ALT+F8). Появится окно со списком записанных макросов и кнопками для управления ими.

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

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

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

1 Правильные имена в макросах.

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

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

2 Используйте относительные (не абсолютные) адреса ячеек

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

По умолчанию в Excel включен режим «Абсолют», но вы можете изменить его, включив кнопку «Относительные ссылки» расположенную ниже под кнопкой «Запись макроса» на панели инструментов вкладки «Разработчик»:

3 Всегда начинайте запись с курсором в A1

Абсолютный отсчет ячеек, всегда ведется с исходного положения (адрес ячейки А1) – до адреса курсора с вашими данными. Если вы сохранили ваш макрос в книге личных макросов (рекомендуется так и делать), то вы можете использовать свою программу на других листах с аналогичными данными. Независимо от того, где ваш курсор позиционируется, когда вы начинаете запись макроса! Даже если он уже находится в ячейке A1, ваш первый макрос лучше записывать после нажатия клавиш должны быть Ctrl + Home.

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

4 Всегда перемещаться с клавиш направления в момент записи макроса

Используйте кнопки со стрелками для управления курсором (Ctrl + Up, и т.п.). Позиционируйте курсор, так чтобы вы могли добавить, изменить или удалить данные внутри таблицы по мере необходимости.

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

5 Создавайте макросы для конкретных небольших задач

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

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

Если нельзя разбить длинный макрос на короткие приложения, а требуется проверить его функциональность пошагово («отладкой»). Нажмите клавишу F8 каждый раз, когда вы хотите перейти к следующему шагу выполнения задачи. Процесс выполнения программы останавливается, когда он видит ошибку. Вы можете исправить ошибку, которую легко найти с помощью «отладки» или записать по-новому.

VBA считается стандартным языком написания сценариев для приложений Microsoft, и в настоящее время он входит в состав всех приложений Office и даже приложений других компаний. Следовательно, овладев VBA для Excel, вы сможете сразу перейти к созданию макросов для других программных продуктов Microsoft. Более того, вы сможете создавать полноценные программные продукты, одновременно использующие функции самых разных приложений.

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

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

На ленте появиться новая вкладка Разработчик с элементами управления автоматизации Excel.

Написание макросов в Excel

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

Вы также можете воспользоваться альтернативным вариантом записи макросов, воспользовавшись кнопкой Запись макроса, которая находится в левом нижнем углу рабочей книги Excel (правее статуса Готово).

Теперь вы можете посмотреть список всех созданных макросов, нажав на кнопку Макрос, находящуюся в группе Код. В появившемся диалоговом окне вы можете дать более описательные имена своим кодам или задать сочетания клавиш, которые бы запускали тот или иной макрос. Альтернативным вариантом запуска данного окна является нажатие клавиш Alt + F8.

Редактирование макросов

Поздравляю! Вы написали свой первый макрос. Логичным будет проверить теперь, какой же код сгенерировал нам Excel. Сгенерированный код написан на языке VBA (Visual Basic for Applications). Чтобы увидеть его, нужно открыть Редактор VB (VBE), который запускается нажатием клавиш Alt + F11 или кнопкой Visual Basic на вкладке Разработчик.

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

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

Для просмотра кода, щелкните по ветке Modules в окне проектов и дважды щелкните по появившейся ветке Module. Редактор откроет окно с кодом, как изображено на картинке.

Здесь можно редактировать сгенерированный код, который был записан при работе в Excel. К примеру, вам требуется заполнить определенный столбец значениями от 1 до 10. У вас уже есть первые три шага, которые вводят значения 1, 2 и 3 в первые три ячейки столбца А. Нам необходимо дописать оставшиеся семь шагов.

Если вы посмотрите на приведенный выше код, вы увидите, что макрос определенным образом структурирован. Сначала приложение перемещает курсор на ячейку с помощью команды Range(«A1»).Select, затем редактирует его содержимое с помощью ActiveCell.FormulaR1C1 = «1». Таким образом, для оставшихся шагов мы можем повторить эти действия, меняя адрес ячейки и значение, которое вы хотите записать в эту ячейку. Например, чтобы задать ячейке A4 значение 4, вы должны написать:

1
2

Range(«A4»).Select
ActiveCell.FormulaR1C1 = «4»

И повторить аналогичные шаги для оставшихся значений.

После того, как вы закончите редактирование, сохраните книгу. Запустить макрос вы сможете нажатием кнопки F5, либо, вернувшись в рабочую книгу Excel, перейти по вкладке Разработчик в группу Код -> Макросы и выбрать из списка, интересующий вас макрос.

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

Увеличение скорости выполнения макросов Excel

Пока все хорошо. Давайте разберем пару хитростей, которые помогут ускорить выполнение макроса. Рассмотрим в качестве примера фрагмент кода, приведенный выше. Современные компьютеры отработают рассматриваемый код так быстро, что вы даже не заметите этого. Но что если вам необходимо выполнить операцию 50000 раз. Это займет какое-то время. Если макрос, написанный вами, исчисляется сотнями строк, ускорить выполнение кода можно путем обрезки части процессов, который не используется во время исполнения макроса.

Использование команды Application.ScreenUpdating

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

1
2
3
4
5
6
7
8
9
10

Sub Макрос1()
Application.ScreenUpdating = False
Range(«A1»).Select
ActiveCell.FormulaR1C1 = «1»
Range(«A2»).Select
ActiveCell.FormulaR1C1 = «2»
Range(«A3»).Select
ActiveCell.FormulaR1C1 = «3»
Application.ScreenUpdating = True
End Sub

Команда Application.ScreenUpdating говорит Excel, чтобы он прекратил выводить пересчитанные данные на экран, а выдал готовые значения в конце выполнения кода.

Использование команды Application. Calculation

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

1
2
3
4
5
6
7
8
9
10
11
12

Sub Макрос1()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Range(«A1»).Select
ActiveCell.FormulaR1C1 = «1»
Range(«A2»).Select
ActiveCell.FormulaR1C1 = «2»
Range(«A3»).Select
ActiveCell.FormulaR1C1 = «3»
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub

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

Избежание выбора ячеек и диапазонов

В режиме автоматической записи макросов, вы можете заметить, что Excel очень часто использует команду выбора ячеек, например, Range(«A1»).Select. В нашем примере, мы использовали данную команду несколько раз, чтобы выбрать ячейку и изменить ее значение. Вы можете избежать этого просто указав адрес ячейки и задав ей необходимое значение (Макрос записал движение курсора от одной ячейки к другой, следовательно, вставил эти шаги. Однако они не являются необходимыми). Так что, более эффективный код будет выглядеть следующим образом.

1
2
3
4
5
6
7
8
9
10
11

Sub Макрос1()
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Range(«A1»).Value = 1
Range(«A2»).Value = 2
Range(«A3»).Value = 3
Range(«A4»).Value = 4
Range(«A5»).Value = 5
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub

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

Примеры макросов Excel

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

Макрос вставки строки

1
2
3

Sub Макрос1()
Rows(2).EntireRow.Insert ‘Вставляет строку перед второй строкой
End Sub

Макрос вставки столбца

1
2
3

Sub Макрос1()
Columns(3).EntireColumn.Insert ‘Вставляет столбец левее 3-го столбца
End Sub

Макрос форматирования

1
2
3
4
5
6

Sub Макрос1()
‘Делает формат ячейки D2 жирным, подчеркнутым и курсив
Cells(2, 4).Font.Bold = True
Cells(2, 4).Font.Underline = xlUnderlineStyleSingle
Cells(2, 4).Font.Italic = True
End Sub

Макрос обхода диапазона ячеек

1
2
3
4
5
6

Sub Макрос1()
For Each cel In Range(Cells(1, 1), Cells(10, 5))
counter = counter + 1
cel.Value = counter
Next cel
End Sub

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

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

Способы записи макросов

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

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

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

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

Автоматическая запись макросов

Прежде, чем начать автоматическую запись макросов, нужно включить макросы в программе Microsoft Excel.

Далее, переходим во вкладку «Разработчик». Кликаем по кнопке «Запись макроса», которая расположена на ленте в блоке инструментов «Код».

Открывается окно настройки записи макроса. Тут можно указать любое имя макроса, если установленное по умолчанию вас не устраивает. Главное, чтобы имя это начиналось с буквы, а не с цифры. Также, в названии не должно быть пробелов. Мы оставили название по умолчанию – «Макрос1».

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

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

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

Когда все настройки выполнены, жмем на кнопку «OK».

После этого, все ваши действия в данной книге (файле) Excel будут записываться в макрос до тех пор, пока вы сами не остановите запись.

Для примера, запишем простейшее арифметическое действие: сложение содержимого трёх ячеек (=C4+C5+C6).

После этого, жмем на кнопку «Остановить запись». Эта кнопка преобразовалась из кнопки «Запись макроса», после включения записи.

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

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

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

Можно поступить ещё проще, и не вызывать даже окно выбора макросов. Мы же помним, что записали сочетание «горячих клавиш» для быстрого вызова макроса. В нашем случае, это Ctrl+М. Набираем данную комбинацию на клавиатуре, после чего макрос запускается.

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

Редактирование макроса

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

Открывается Microsoft Visual Basic (VBE) – среда, где происходит редактирование макросов.

Запись каждого макроса начинается с команды Sub, а заканчивается командой End Sub. Сразу же после команды Sub указывается имя макроса. Оператор «Range(«…»).Select» указывает выбор ячейки. Например, при команде «Range(«C4»).Select» выбирается ячейка C4. Оператор «ActiveCell.FormulaR1C1» используется для записи действий в формулах, и для других расчетов.

Попытаемся немного изменить макрос. Для этого, в макрос допишем выражение:

Range(«C3»).Select
ActiveCell.FormulaR1C1 = «11»

Выражение «ActiveCell.FormulaR1C1 = «=RC+RC+RC»» заменим на «ActiveCell.FormulaR1C1 = «= RC+RC+RC+RC»».

Закрываем редактор, и запускаем макрос, как и в прошлый раз. Как видим, вследствие введенных нами изменений была добавлена ещё одна ячейка с данными. Она также была включена в расчет общей суммы.

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

Добавим также команду «Application.Calculation = xlCalculationManual» вначале кода, а в конце кода дописываем «Application.Calculation = xlCalculationAutomatic». Этим мы вначале макроса отключаем автоматический пересчет результата после каждого изменения ячеек, а в конце макроса – включаем. Таким образом, Excel подсчитает результат только один раз, а не будет его постоянно пересчитывать, чем сэкономит время.

Написание кода макроса с нуля

Продвинутые пользователи могут выполнять не только редактирование и оптимизацию записанных макросов, но и записывать код макросов с нуля. Для того, чтобы приступить к этому, нужно нажать на кнопку «Visual Basic», которая расположена в самом начале ленты разработчика.

После этого, открывается знакомое нам окно редактора VBE.

Программист пишет там код макроса вручную.

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

Мы рады, что смогли помочь Вам в решении проблемы.

Задайте свой вопрос в комментариях, подробно расписав суть проблемы. Наши специалисты постараются ответить максимально быстро.

Помогла ли вам эта статья?

Да Нет

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

В Microsoft Excel, как и в другие приложения Microsoft Office, встроен интерпретатор языка программирования Visual Basic for Applications (VBA), что дает возможность создавать и запускать программы — макросы.

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

Макрос — это программа, написанная на языке программирования VBA и предназначенная для выполнения в среде Microsoft Excel. Основное назначение макросов — автоматизация обработки документов, выполнение рутинной работы. Например, макрос может очистить рабочие ячейки бланка.

Запись макроса в Excel

Процесс записи макроса рассмотрим на примере.

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

Запуск макроса в Excel

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

  • 1. Раскрыть вкладку Вид -> Макросы.
  • 2. В окне Макросы выбрать макрос Очистить сделать щелчок на кнопке Выполнить.

Сохранение макросов Excel

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

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

Добрый день!

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

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

Если вы никогда не слышали о макросе, то самым точным его определением будет таким, это действия которые запрограммированы на определённую последовательность и записаны в среде программирования на языке Visual Basic for Applications (VBA). Запуск макроса может производиться многократно и это заставит Excel выполнять любую последовательность необходимых нам действий, которые вручную выполнять нам просто не нравится или не хочется. Несмотря на великое множество языков программирования для всего комплекса Microsoft Office стандартом является именно VBA и он работает в любом приложении офисного пакета.

Итак, создать макрос в Excel возможно 2 способами:

  1. Создать макрос в Excel с помощью макрорекордера;
  2. Создать макрос в Excel в редакторе Visual Basic.

Создать макрос в Excel с помощью макрорекордера

Для начала проясним, что собой представляет макрорекордер и при чём тут макрос.

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

Этот способ очень полезен тем, кто не владеет навыками и знаниями работы в языковой среде VBA. Но такая легкость в исполнении и записи макроса имеет свои минусы, как и плюсы:

  • Записать макрорекордер может только то, что может пощупать, а значит записывать действия он может только в том случае, когда используются кнопки, иконки, команды меню и всё в этом духе, такие варианты как сортировка по цвету для него недоступна;
  • В случае, когда в период записи была допущена ошибка, она также запишется. Но можно кнопкой отмены последнего действия, стереть последнюю команду которую вы неправильно записали на VBA;
  • Запись в макрорекордере проводится только в границах окна MS Excel и в случае, когда вы закроете программу или включите другую, запись будет остановлена и перестанет выполняться.

Для включения макрорекордера на запись необходимо произвести следующие действия:

  • в версии Excel от 2007 и к более новым вам нужно на вкладке «Разработчик» нажать кнопочку «Запись макроса»;

  • в версиях Excel от 2003 и к более старым (они еще очень часто используются) вам нужно в меню «Сервис» выбрать пункт «Макрос» и нажать кнопку «Начать запись».

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

  • поле «Имя макроса» — можете прописать понятное вам имя на любом языке, но должно начинаться с буквы и не содержать в себе знаком препинания и пробелы;
  • поле «Сочетание клавиш» — будет вами использоваться, в дальнейшем, для быстрого старта вашего макроса. В случае, когда вам нужно будет прописать новое сочетание горячих клавиш, то эта возможность будет доступна в меню «Сервис» — «Макрос» — «Макросы» — «Выполнить» или же на вкладке «Разработчик» нажав кнопочку «Макросы»;
  • поле «Сохранить в…» — вы можете задать то место, куда будет сохранен (но не послан) текст макроса, а это 3 варианта:

    • «Эта книга» — макрос будет записан в модуль текущей книги и сможет быть выполнен только в случае, когда данная книга Excel будет открыта;
    • «Новая книга» — макрос будет сохранен в тот шаблон, на основе которого в Excel создается пустая новая книга, а это значит, что макрос станет доступен во всех книгах, которые будут создаваться на этом компьютере с этого момента;
    • «Личная книга макросов» — является специальной книгой макросов Excel, которая называется «Personal.xls» и используется как специальное хранилище-библиотека макросов. При старте макросы из книги «Personal.xls» загружаются в память и могут быть запущены в любой книге в любой момент.
  • поле «Описание» — здесь вы можете описать, что и как должен делать макрос, для чего он создавался и какие функции несет, это чисто информативное поле, что называется на память.

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

Создать макрос в Excel в редакторе Visual Basic.

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

Запуск редактора программ на VBA происходит по-разному, в зависимости от версии вашей программы Excel:

  • в версиях Excel 2003 и более старше, нам нужно в меню «Сервис», выбрать пункт «Макрос» и нажать «Редактор Visual Basic»;
  • в версиях Excel 2007 и более новее, нам нужно на вкладке «Разработчик» нажать кнопку «Редактор Visual Basic». В случае когда вы не находите эту вкладку вам нужно ее активировать выбрав пункт меню «Файл» — «Параметры» — «Настройка ленты» и в диалоговом окне флажком активируем вкладку «Разработчик».

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

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

Все наши макросы будут храниться в так называемых программных модулях. В любой из книг любой версии Excel нам доступно создание любых программных модулей в любом количестве и размещать в них все созданные нами макросы. Один модуль в состоянии содержать в себе любое количество нужных вам или созданных макросов. Модули доступны в окне «Project Explorer» и размещаются в верхнем левом углу редактора макросов (так же его можно вызвать комбинацией клавиш CTRL+R).

Программные модули в редакторе VBA существуют в нескольких видах и используются для разных вариантов и ситуаций:

  • Обычные модули — самый распространённый вариант при создании макросов. Если вам нужно создание именно такого модуля, тогда выберете в пункте меню «Insert», пункт «Module». В открывшемся новом пустом окне нового модуля теперь можно вводить нужные команды на VBA посредством клавиатуры или же попросту копируя их с других источников, например с моего сайта;

  • Модуль «Эта книга» — размещен там же где и предыдущий в том же окне «Project Explorer» и в данный модуль сохраняют макросы, которые срабатывают при определенных действиях, которые имеют место в книге Excel, это могут быть отправка файла на печать, открытие или закрытие документа и т.п.

  • Модуль листа — может быть доступен там, где и предыдущие, а также через контекстное меню ярлыка листа, выбрав пункт «Исходный текст». В этот модуль записывают те макросы, которые нужно исполнять при выполнении событий на листе, такие как пересчёт листа, изменение данных в ячейке, удаление или копирование листа ну и т.д.

Собственно сам макрос при работе в стандартном модуле выглядит следующим образом:

Рассмотрим на примере работающего макроса «Расширенный фильтр»:

  • Все макросы в обязательном порядке будут начинаться с оператора Sub, после которого следует имя вашего макроса и список аргументов в скобочках. В случаях, когда аргументы отсутствуют скобки нужно оставить пустыми;
  • В обязательном порядке все макросы заканчиваются оператором End Sub;
  • Данные что находятся между операторами Sub и End Sub, является телом макроса, которое будет работать при запуске макроса. В примере, макрос проверяет диапазон данных и при вводе данных находит их в списке базы данных и накладывает фильтр, выводя указанное по критериям значение.

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

Создание кнопки для запуска макросов в панели инструментов

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

  1. Кнопка в панели инструментов в MS Excel 2003 и более старше. Вам нужно в меню «Сервис» в пункте «Настройки» перейти на доступную вкладку «Команды» и в окне «Категории» выбрать команду «Настраиваемая кнопка» обозначена жёлтым колобком или смайликом, кому как понятней или удобней. Вытащите эту кнопку на свою панель задач и, нажав правую кнопку мыши по кнопке, вызовите ее контекстное меню, в котором вы сможете отредактировать под свои задачи кнопку, указав для нее новую иконку, имя и назначив нужный макрос.

  2. Кнопка в панели вашего быстрого доступа в MS Excel 2007 и более новее. Вам нужно клацнуть правой кнопкой мышки на панели быстрого доступа, которое находится в верхнем левом углу окна MS Excel и в открывшемся контекстном меню выбираете пункт «Настройка панели быстрого доступа». В диалоговом окне настройки вы выбираете категорию «Макросы» и с помощью кнопки «Добавить» вы переносите выбранный со списка макрос в другую половинку окна для дальнейшего закрепления этой команды на вашей панели быстрого доступа.

    Создание графической кнопки на листе Excel

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

  • В MS Excel 2003 и более старше переходите в меню «Вид», выбираете «Панель инструментов» и нажимаете кнопку «Формы».
  • В MS Excel 2007 и более новее вам нужно на вкладке «Разработчик» открыть выпадающее меню «Вставить» и выбрать объект «Кнопка».

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

Как создать пользовательские функции на VBA

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

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

Даже если вы новичок в мире Excel VBA, вы можете легко записать макрос и автоматизировать часть своей работы.

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

Если вы хотите изучить VBA простым способом, ознакомьтесь с моим курсом Online Excel VBA Training .

Что такое макрос?

Если вы новичок в VBA, позвольте мне сначала рассказать вам, что такое макрос — в конце концов, я буду использовать этот термин во всем руководстве.

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

Часто люди (включая меня) относятся к коду VBA как к макросу — независимо от того, был ли он создан с помощью средства записи макросов или был написан вручную.

Когда вы записываете макрос, Excel внимательно следит за выполняемыми вами шагами и записывает их на понятном языке — VBA.

И поскольку Excel действительно хорошо умеет делать заметки, он создает очень подробный код (как мы увидим позже в этом руководстве).

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

Это означает, что даже если вы ничего не знаете о VBA, вы можете автоматизировать некоторые задачи, просто позволив Excel записать ваши шаги один раз, а затем повторно использовать их позже.

Теперь давайте углубимся и посмотрим, как записать макрос в Excel.

Получение вкладки разработчика на ленте

Первый шаг для записи макроса — это открыть вкладку «Разработчик» на ленте.

Если вы уже видите вкладку разработчика на ленте, перейдите к следующему разделу, в противном случае выполните следующие действия:

  • Щелкните правой кнопкой мыши любую из существующих вкладок на ленте и выберите параметр «Настроить ленту». Откроется диалоговое окно параметров Excel.
  • В диалоговом окне «Параметры Excel» у вас будут параметры «Настроить ленту». Справа на панели «Основные вкладки» установите флажок «Разработчик».
  • Нажмите ОК.

При выполнении описанных выше шагов вкладка «Разработчик» станет доступной в области ленты.

Запись макроса в Excel

Теперь, когда у нас все готово, давайте узнаем, как записать макрос в Excel.

Давайте запишем очень простой макрос — тот, который выбирает ячейку и вводит в нее текст «Excel». Я использую текст «Excel» при записи этого макроса, но не стесняйтесь вводить свое имя или любой другой текст, который вам нравится.

Вот шаги для записи этого макроса:

  1. Щелкните вкладку Разработчик.
  2. В группе «Код» нажмите кнопку «Макрос».Откроется диалоговое окно «Запись макроса».
  3. В диалоговом окне «Запись макроса» введите имя макроса. Я использую имя EnterText . При присвоении имени макросу необходимо соблюдать некоторые условия именования. Например, нельзя использовать пробелы между ними. Обычно я предпочитаю использовать имена макросов в виде одного слова с разными частями с заглавными буквами первого алфавита. Вы также можете использовать подчеркивание для разделения двух слов, например Enter_Text.
  4. (Необязательный шаг) При желании вы можете назначить сочетание клавиш.В этом случае мы будем использовать сочетание клавиш Control + Shift + N. Помните, что назначенный здесь ярлык переопределит любые существующие сочетания клавиш в вашей книге. Например, если вы назначите сочетание клавиш Control + S, вы не сможете использовать его для сохранения книги (вместо этого, каждый раз, когда вы ее используете, он будет выполнять макрос).
  5. Убедитесь, что в параметре «Сохранить макрос в» выбрана «Эта книга». Этот шаг гарантирует, что макрос является частью книги. Он будет там, когда вы сохраните его и снова откроете, или даже если вы поделитесь им с кем-то.
  6. (Необязательный шаг) Введите описание. Обычно я этого не делаю, но если вы очень организованы, вы можете добавить, о чем макрос.
  7. Нажмите ОК. Как только вы нажмете ОК, он начнет записывать ваши действия в Excel. Вы можете увидеть кнопку «Остановить запись» на вкладке «Разработчик», которая указывает на то, что выполняется запись макроса.
  8. Выберите ячейку A2.
  9. Введите текст Excel (или можете использовать свое имя).
  10. Нажмите клавишу Enter.Это выберет ячейку A3.
  11. Нажмите кнопку «Остановить запись» на вкладке «Разработчик».

Поздравляем!

Вы только что записали свой первый макрос в Excel. Вы больше не девственница макросов.

Хотя макрос не делает ничего полезного, он служит своей цели, объясняя, как работает средство записи макросов в Excel.

А теперь давайте протестируем этот макрос.

Чтобы проверить макрос, выполните следующие действия:

  1. Удалите текст в ячейке A2.Это нужно для проверки, вставляет ли макрос текст в ячейку A2 или нет.
  2. Выберите любую ячейку — кроме A2. Это нужно для проверки, выбирает ли макрос ячейку A2 или нет.
  3. Щелкните вкладку Разработчик.
  4. В группе «Код» нажмите кнопку «Макросы».
  5. В диалоговом окне «Макрос» щелкните имя макроса — EnterText.
  6. Нажмите кнопку «Выполнить».

Вы заметите, что как только вы нажмете кнопку «Выполнить», текст «Excel» будет вставлен в ячейку A2, а ячейка A3 будет выделена.

Теперь все это может произойти за доли секунды, но на самом деле макрос — как послушный эльф — следовал точным шагам, которые вы показали ему при записи макроса.

Таким образом, макрос сначала выбирает ячейку A2, затем вводит в нее текст Excel , а затем выбирает ячейку A3.

Примечание. Вы также можете запустить макрос с помощью сочетания клавиш Control + Shift + N (удерживая клавиши Control и Shift, нажмите клавишу N). Это то же сочетание клавиш, которое мы назначили макросу при его записи.

Что делает запись макроса в серверной части

Теперь перейдем к бэкэнду Excel — редактору VB — и посмотрим, что на самом деле делает запись макроса.

Вот шаги, чтобы открыть редактор VB в Excel:

  1. Щелкните вкладку Разработчик.
  2. В группе «Код» нажмите кнопку Visual Basic.

Или вы можете использовать сочетание клавиш — ALT + F11 (удерживая клавишу ALT и нажмите F11) вместо двух вышеуказанных шагов. Этот ярлык также открывает тот же редактор VB.

Теперь, если вы впервые видите VB Editor, не расстраивайтесь.

Позвольте мне быстро познакомить вас с анатомией VB Editor.

Создание и присвоение имени рабочему листу с помощью макроса (Microsoft Excel)

Обратите внимание:
Эта статья написана для пользователей следующих версий Microsoft Excel: 97, 2000, 2002 и 2003. Если вы используете более позднюю версию (Excel 2007 или новее), этот совет может не сработать для вас .Чтобы ознакомиться с версией этого совета, написанного специально для более поздних версий Excel, щелкните здесь: Создание и присвоение имени рабочему листу с помощью макроса.

Джефф хотел бы создать копию своего «основного» рабочего листа, запросить имя нового рабочего листа и переместить его в конец вкладок рабочего листа, и все это из макроса.Он попытался записать макрос для этого, но это не сработало.

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

В этом случае вам нужно написать макрос вручную.Вы можете начать с записи процесса, и вы получите следующий код:

Дополнительный макрос1 ()
    Таблицы ("Мастер"). Выбрать
    Таблицы ("Мастер"). Копировать после: = Листы (3)
    Таблицы ("Мастер (2)"). Выберите
    Таблицы ("Мастер (2)"). Name = "NewMaster"
Конец подписки
 

Обратите внимание, что код помещает рабочий лист (после третьего листа), а затем всегда называет его одинаково. Здесь есть что изменить. Что вы хотите сделать, так это изменить его на что-то вроде следующего:

Sub CopyRename ()
    Dim sName As String
    Dim wks как рабочий лист
    Рабочие листы («Мастер»).Копировать после: = Sheets (Worksheets.Count)
    Установить wks = ActiveSheet
    Сделать Пока sName <> wks.Name
        sName = Application.InputBox _
          (Подсказка: = "Введите имя нового рабочего листа")
        При ошибке Возобновить Далее
        wks.Name = sName
        При ошибке GoTo 0
    Петля
    Установить wks = ничего
Конец подписки
 

Этот макрос скопирует рабочий лист с именем «Мастер» в конец списка листов (независимо от того, сколько листов у вас в книге) и продолжит запрашивать новое имя рабочего листа, пока не будет введено допустимое имя.

ExcelTips — ваш источник экономичного обучения Microsoft Excel.
Этот совет (3898) применим к Microsoft Excel 97, 2000, 2002 и 2003. Вы можете найти версию этого совета для ленточного интерфейса Excel (Excel 2007 и более поздних версий) здесь: Создание и присвоение имени рабочему листу с помощью макроса .

Автор Биография

Аллен Вятт

Аллен Вятт — всемирно признанный автор, автор более чем 50 научно-популярных книг и многочисленных журнальных статей.Он является президентом Sharon Parq Associates, компании, предоставляющей компьютерные и издательские услуги. Узнать больше о Allen …

Объединение только даты из Access

Когда вы объединяете данные из базы данных Access, вы можете получить больше информации, чем хотите, особенно когда дело касается …

Узнать больше

Удаление файла в макросе

Макросы

дают вам полный контроль над созданием, поиском, переименованием и удалением файлов.Этот совет посвящен этому …

Узнать больше

Поиск текста, не заканчивающегося абзацем

Возможности Word «Найти и заменить» очень эффективны, особенно если при поиске вы используете подстановочные знаки. …

Узнать больше

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

Макросы

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

Хотя макросы очень полезны, но при неправильном использовании они могут нанести ущерб вашим данным или даже вашему компьютеру. Если вы по незнанию запускаете какой-либо вредоносный макрос, это может привести к повреждению вашей установки Microsoft Office или возникновению других проблем. И по этой причине Microsoft по умолчанию отключила внешние (или ненадежные) макросы.

Сегодня в этом посте я расскажу вам , как включить макросы в Excel:

Включение макросов в Excel 2000 и 2003:

  • Прежде всего перейдите на вкладку «Инструменты»> «Макрос»> «Безопасность». .
  • После нажатия на опцию «Безопасность» откроется окно «Безопасность». Он покажет вам все уровни безопасности, которые вы можете выбрать для своих макросов.
  • Я бы посоветовал никогда не выбирать «Низкий уровень безопасности».«Средний уровень безопасности» лучше, так как он будет запрашивать ваше разрешение каждый раз перед запуском макроса.

Включить макросы в Excel 2007:

  • В открытом файле Excel нажмите кнопку «Офис».
  • Затем нажмите «Параметры Excel» (присутствует внизу).
  • Затем выберите «Центр управления безопасностью»> «Настройки центра управления безопасностью».
  • В настройках центра управления безопасностью нажмите «Настройки макроса». Оттуда вы можете выбрать уровень безопасности для запуска макросов.

Включение макросов в Excel 2010 и 2013:

  • Откройте файл Microsoft Excel и перейдите в «Файл»> «Параметры»> «Центр управления безопасностью». Затем нажмите «Настройки центра управления безопасностью».
  • В окне «Настройки центра управления безопасностью» выберите параметр «Настройки макроса». И выберите параметр безопасности, который вы хотите применить при выполнении макроса.

Подробное объяснение настроек макроса (для Excel 2007, 2010 и 2013):

Различные параметры безопасности в Microsoft excel 2007, 2010 и 2013 не очень понятны.Итак, здесь я подробно объясню эти параметры:

1. Отключить все макросы без уведомления: Если вы выберете этот параметр, он заблокирует все макросы и не будет давать вам никаких уведомлений об этом.

2. Отключить все макросы с уведомлением: В этих настройках макросы отключены, но все равно каждый раз, когда вы открываете лист Excel с макросом, он спрашивает вас, хотите ли вы запустить макрос или нет.

3. Отключить все макросы, кроме макросов с цифровой подписью: Это то же самое, что и второй вариант, за исключением того, что он автоматически разрешает макросы, подписанные доверенными издателями.

4. Разрешить все макросы (не рекомендуется, потенциально опасный код может запускаться): Этот параметр разрешит запуск всех макросов без запроса. Как правило, вам следует избегать использования этой опции.

Как запустить макрос, даже если функция «Запуск макросов» отключена:

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

По умолчанию эти надежные расположения:

  1. Program Files \ Microsoft Office \ Templates
  2. Program Files \ Microsoft Office \ Office12 \ Startup
  3. Program Files \ Microsoft Office \ Office12 \ Library
  4. Program Files \ Microsoft Office \ Office12 \ XLSTART

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

  • В Excel перейдите в «Файл»> «Параметры»> «Центр управления безопасностью»> «Настройки центра управления безопасностью»> «Надежные расположения».
  • Затем, используя кнопку «Добавить новое местоположение», вы можете добавить любое местоположение в Надежные расположения.

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

Итак, это все о том, как включить макросы в Excel.

Вам также может понравиться

Бесплатные тесты Excel — Использование макросов

Бесплатный онлайн-тест Microsoft Excel
Обучение работе с Excel 2010 —
Макросы

* Запуск макроса
*
Запись макроса
* Назначьте макрос кнопке

* Сохранение книги с поддержкой макросов

* Удалить макрос


Тест из 10 вопросов с несколькими вариантами ответов и ответами
и пояснения к ответу

Использование макросов Excel Test

1) Какое из приведенных ниже описаний лучше всего описывает функции макроса в Excel?

2) Изучите скриншот выше.Какое действие следует предпринять, когда в книге отображается это сообщение ( Макросы предупреждения безопасности были отключены )?

3) Изучите скриншот выше. Где вы найдете возможность открыть диалоговое окно «Макросы»?

4) Если вы хотите заменить формулу ИНДЕКС-ПОИСКПОЗ, использованную в вопросе 3 выше, формулой ВПР, какая из следующих результатов даст тот же результат, что и формула ИНДЕКС-ПОИСКПОЗ, при вводе в выделенную ячейку в скриншот выше вопроса 3?

5) Какова комбинация клавиш для запуска диалогового окна «Макросы»?

6) Рабочие книги, содержащие макросы, необходимо сохранять в следующем формате:

7) Изучите снимок экрана выше.Какая часть процесса создания макроса отражена на этом изображении?

8) Как можно просматривать и удалять макросы, созданные на листе?

9) Где вы назначаете макрос кнопке на ленте?

10) Вы допустили ошибку во время записи макроса.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *