Начнем с того, что такое макрос. Это действия, запрограммированные на определенную последовательность. Создать такую последовательность в Excel можно двумя способами. Во-первых, с помощью макрорекордера ( программки, вшитой в Excel, которая записывает ваши действия). А во-вторых, с помощью редактора Visual Basic. Подробно и понятно читайте в этой статье:
Комментировать ответ… Комментировать…
Вы знаете ответ на этот вопрос?
Поделитесь своим опытом и знаниями
Ответы на похожие вопросы
Меломан, киноман, самоучка — программист, любитель расширять свой кругозор. · 23 апр 2018
Макрос можно записать двумя способами:
Воспользовавшись первым вариантом, вы просто записываете определенные действия в программе Microsoft Excel, которые выполняете в данный момент времени. Потом, можно будет воспроизвести эту запись. Данный способ очень легкий, и не требует знания кода, но применение его на практике довольно ограничено.
Ручная запись макросов, наоборот, требует знаний программирования, так как код набирается вручную с клавиатуры. Но, грамотно написанный таким образом код, может значительно ускорить выполнение процессов.
ИЗУЧАЕМ EXCEL. ПИШЕМ ЖИМОВУЮ ПРОГРАММУ
Источник: yandex.ru
Как в Excel записать макрос
Самый простой способ начать изучение макросов Excel состоит в их использовании для записи последовательности действий. Затем вы можете воспроизводить эту последовательность, то есть выполнять макрос.
Следующий пример даст новичкам возможность почувствовать, как работают макросы. В нем показано, как записать простой макрос, который вставляет ваше имя в активную ячейку.
Создание макроса
Чтобы создать макрос, выполните следующие действия.
- Активизируйте пустую ячейку.
- Нажмите кнопку Запись макроса в левой части строки состояния. Появится окно Запись макроса.
- Введите новое имя для макроса, состоящее из одного слова, чтобы заменить имя по умолчанию Макрос1. Укажем МоеИмя.
- Назначьте макросу сочетание клавиш Ctrl+Shift+N, введя букву N в верхнем регистре в поле для редактирования, помеченное как Сочетание клавиш.
- Нажмите ОК, чтобы закрыть диалоговое окно Запись макроса и начать запись ваших действий.
- Введите свое имя в выбранную ячейку и нажмите клавишу Enter.
- Макрос завершен, поэтому нажмите кнопку Остановить запись в строке состояния.
Этот макрос очень простой. В большинстве случаев вы будете записывать больше действий, чем указано в этом примере.
Просмотр кода макроса
Макрос был записан в новый модуль VBA под названием Module1. Если вам интересно, можете посмотреть на инструкции, которые были записаны. Для просмотра кода этого модуля вы должны открыть Visual Basic Editor (VBE). Нажмите Alt+F11 для переключения между окнами VBE и Excel.
В VBE окно Project отображает список всех открытых книг и надстройки. Этот список показан в виде древовидной диаграммы, которую можно сворачивать и разворачивать. Код, который вы записали ранее, хранится в Module1 текущей книги. Если вы дважды щелкнете на Modulel, то код модуля появится в окне Code (рис. 204.1).
Ввод формулы в Excel
Рис. 204.1. Макрос МоеИмя был сгенерирован посредством записи макросов в Excel
Обратите внимание, что Excel вставил комментарии в верхней части процедуры. Это некоторая информация, которая появилась в окне Запись макроса. Строки с комментариями (которые начинаются с апострофа) необязательны, а их удаление не влияет на работу макроса.
Тестирование макроса
Перед тем как записать этот макрос, вы назначили ему сочетание клавиш Ctrl+Shift+N. Чтобы протестировать макрос, вернитесь в Excel, нажав Alt+F11. Когда Excel активен, активизируйте лист (он может быть в книге, содержащей модуль VBA, или в любой другой книге). Выберите ячейку или диапазон ячеек и нажмите Ctrl+Shift+N. Макрос немедленно введет ваше имя в ячейку.
В этом примере обратите внимание на то, что вы выбрали ячейку до начала записи макроса. Это важно. Если выбрать ячейку в то время, как идет запись макроса, та ячейка, которую вы выберете, запишется в макрос. В таком случае он всегда будет вводить ваше имя именно в эту ячейку и не станет макросом «общего назначения».
Источник: excelexpert.ru
Как написать и использовать собственную надстройку в Excel
Если макросов много, а используются они часто более рационально будет создание собственной надстройки Excel — отдельного файла особого формата (xla – Excel2003, xlam – Excel2010 и старше), содержащего все макросы.
Плюсы такого подхода очевидны:
- больше не будет срабатывать защита от макросов, потому что надстройки по определению входят в доверенные источники;
- однократное подключение надстройки в Excel. Теперь её VBA процедуры и функции можно будет использовать в любом файле на компьютере. Сохранять ваши рабочие файлы в xlsm- и xlsb-форматы, также не требуется потому, что исходный текст будет храниться не в них, а в файле надстройки.
- можно сделать отдельную вкладку на ленте Excel для запуска макросов надстройки.
- Надстройку легко переносить с компьютера на компьютер — это отдельный файл.
Рассмотрим процесс создания своей собственной надстройки для Excel на примере Excel 2010.
1. Создать файл надстройки
Открываем Excel с пустой книгой и сохраняем ее в формате надстройки с помощью команды Файл — Сохранить как, например, Excel Plus ), указав тип файла Надстройка Excel (Excel Add-in) :
По умолчанию Excel хранит надстройки в папке C:Users\AppDataRoamingMicrosoftAddIns , но можно указать и любую другую папку.
2. Подключить созданную надстройку
Теперь созданную нами на прошлом шаге надстройку ExcelPlus надо подключить к Excel. Для этого в меню Файл — Параметры — Надстройки , жмем на кнопку Перейти в нижней части окна:
Если вы скопировали файл надстройки в папку по умолчанию, то новая надстройка ExcelPlus должна появиться в списке доступных надстроек:
Либо в этом окне жмем Обзор и указываем положение нашего файла надстройки.
Ставим флажок напротив названия настройки и жмем ОК.
3. Добавить макросы в надстройку
Теперь надстройка подключена к Excel, но она не может работать, так как в ней отсутствуют макросы. Добавим макрос в надстройку. Для этого откроем редактор VBA по Alt+F11 или кнопкой Visual Basic на вкладке Разработчик :
В левом верхнем углу редактора должно быть окно Project
В этом окне отображаются все открытые книги и запущенные надстройки Excel, в том числе и наша надстройка — VBAProject ( ExcelPlus.xlam) Выделите её мышью и добавьте в неё новый модуль через меню Insert — Module .
В этом модуле будет хранится VBA-код макросов надстройки.
Добавим в добавленный пустой модуль код макроса, который производит поиск в тексте кириллических символов:
После вставки кода нужно нажать на кнопку сохранения дискетку в левом верхнем углу.
Такие макросы как FindCyr называют еще процедурами . Макросы в составе надстроек можно запустить также как обычные макросы:
- при помощи сочетания клавиш Alt+F8 , а затем нажать кнопку Выполнить (макросы надстроек здесь не видны. Несмотря на это, мы можем ввести имя нашей процедуры в поле Имя макроса );
- назначить сочетание клавиш для быстрого запуска макроса — кнопка Параметры в окне Макрос
- создать кнопку для нашего макроса на панели быстрого доступа в левом верхнем углу окна.
Подробнее и с картинками о способах запуска макроса написано здесь.