Наверное, многие слышали это слово «макрос», но не все имеют точное представление что это, если заглянули на эту страничку.
Макрос — это макрокоманда(так звучит в правильном переводе с англ.языка), содержащая последовательность действий, записанных пользователем. Запись производится с помощью встроенного в пакет Microsoft Office языка программирования — Visual Basic for Application ( VBA ).
Зачем же нужны макросы? А нужны они для того, чтобы избавить Вас от рутинного выполнения одних и тех же действий. Например, Вам каждый день приходиться удалять из ежедневных отчетов по несколько столбцов и добавлять новые строки для шапки и т.п. Скучно и утомительно.
Вы просто можете записать один раз все эти действия макрорекордером, а в дальнейшем только вызывать записанный макрос и он все сделает за Вас. Что немаловажно, для использования макрорекордера и записи макроса не надо обладать никакими навыками программирования.
В этой статье:
- Подготовка к записи макроса
- Запись макроса
- Параметры записи макроса
- Воспроизведение макроса
- В каких файлах можно хранить макросы?
ПОДГОТОВКА К ЗАПИСИ МАКРОСА
УРОК 1. Знакомство с макросами / Как работать с макросами в Excel?
Прежде чем начать работать с макросами необходимо разрешить их выполнение, т.к. по умолчанию они отключены. Для этого необходимо сделать следующее:
- Excel 2003:
Сервис-Безопасность-Уровень макросов «Низкий» - Excel 2007:
Кнопка Офис-Параметры Excel (Excel Options) -Центр управления безопасностью (Trust Centr) -Параметры центра управления безопасностью (Trust Centr Settings) -Параметры макросов (Macro Settings) -Разрешить все макросы (Enable All Macros) - Excel 2010:
Файл (File) -Параметры (Options) -Центр управления безопасностью (Trust Centr) -Параметры центра управления безопасностью (Trust Centr Settings) -Параметры макросов (Macro Settings) -Разрешить все макросы (Enable All Macros)
Прежде чем начать записывать макрос необходимо помнить следующее:
- Макрорекордер записывает АБСОЛЮТНО ВСЕ ваши действия – ошибки, прокручивание экрана, переключение между листами, выделение ячеек и т.д. Поэтому перед записью своих действий необходимо сначала тщательно продумать все свои действия, чтобы в дальнейшем записать только то, что действительно необходимо записать и в дальнейшем воспроизвести. Это сократит как сам код, так и время его выполнения
- Макрорекордер записывает действия выполненные только в пределах Microsoft Excel. Если вы переключитесь в другое приложение – действия в этой программе записаны не будут. Если закроете Excel – запись прекратится
- Макрорекордер может записать только те действия, которые можно проделать вручную(те, которые доступны для выполнения из меню и с панелей)
- Если во время кода вы совершили ошибочное действие и нажали кнопку отмены(Ctrl+Z) – отмененное действие не будет записано в макрос, как будто вы его просто не делали
Макросы Excel для начинающих | Программирование в excel VBA примеры
ЗАПИСЬ МАКРОСА
Для пользователей Excel 2003 запись макроса возможна через меню:
Сервис -Макрос -Начать Запись
Для пользователей Excel 2007-2010 и старше:
- С вкладки Разработчик (Developer) : Группа Код (Code) -Запись макроса (Record Macro)
Отобразить вкладку Разработчик (Developer)(если еще не отображена)
Excel 2007: Параметры Excel (Excel Options) — Основные (Popular) — галочка напротив Показывать вкладку Разработчик на ленте (Show Developer Tab on Ribbon)
Excel 2010: Файл (File) — Параметры (Options) — Настройка ленты (Customize Ribbon) — галочка напротив Разработчик (Developer) - Из строки состояния: Нажать кнопку «Запись макроса»
Для записи макроса из строки состояния нужно убедиться в том, что в настройках Строки состояния стоит галочка напротив Запись макроса (Macro Recording)
Посмотреть настройки строки состояния можно щелкнув правой кнопкой мыши на нижней границе приложения:
Если данная галочка включена, то в строке состояния будет значек, отображающий текущее состояние записи
Нет записи
Идет запись
ПАРАМЕТРЫ ЗАПИСИ МАКРОСА
Перед записью можно задать имя записываемому макросу и назначить сочетание клавиш, при нажатии которых этот макрос будет запускаться. После нажатия кнопки для начала записи макроса появится окно:
Имя макроса – не должно содержать пробелов, запятых, двоеточий и т.п. Допустимы символы кириллицы, латиницы, цифры и нижнее подчеркивание (я рекомендую давать макросам имена, содержащие только буквы латиницы). Имя макроса всегда должно начинаться с буквы и не должно совпадать со встроенным именем Excel или именем другого объекта в книге (например, не должно носить имя Workbook, Cells или ЭтаКнига). Лучше давать макросу сразу понятное имя, отражающее примерную суть того, что он делает.
Сочетание клавиш – можно назначить вызов макроса сочетанием клавиш. Доступно назначение любой цифры или буквы в сочетании с Ctrl.
Сохранить в – выбираете место хранения записываемого макроса. Доступны варианты:
- Эта книга (This Workbook) – макрос будет записан в той же книге, из которой была запущена запись. Записанный макрос будет доступен из приложения только если книга открыта
- Новая книга (New Workbook) – будет создана новая книга, в которой записан макроса. Записанный макрос будет доступен из приложения только если книга открыта
- Личная книга макросов (Personal Macro Workbook) – самый интересный вариант. Если его выбрать, то макрос будет сохранен в отдельной книге PERSONAL.XLS (для Excel 2007 и выше — PERSONAL.XLSB). Макросы, записанные в эту книгу доступны из всех открытых книг Excel и эта книга подключается автоматически при запуске самого Excel. Т.е. однажды записав где-то макрос в эту книгу – он теперь будет доступен из любой книги независимо от того, открыта ли книга, из которой был записан макрос или нет. Изначально эта книга отсутствует и создается в момент первого обращения к ней (т.е. как только вы первый раз выбрали Сохранить в личную книгу макросов)
ВОСПРОИЗВЕДЕНИЕ МАКРОСА
После записи макроса запустить его можно разными способами:
- ПРИ ПОМОЩИ СОЧЕТАНИЯ КЛАВИШ: Alt+F8
Этот способ универсальный и его можно использовать из любой версии Excel. Достаточно нажать сочетание клавиш Alt+F8 и выбрать нужный макрос из списка: - ВЫЗОВ ИЗ МЕНЮ:
Excel 2007-2010 и старше: вкладка Разработчик (Developer) → Макросы (Macros)
Excel 2003: Сервис→ Макрос→ Макросы - НАЖАТИЕМ СОБСТВЕННОЙ КНОПКИ НА ЛИСТЕ:
Можно разместить на листе собственную кнопку, по нажатии которой будет запускаться записанный макрос. Подробно этот процесс я описал в статье: Как создать кнопку для вызова макроса на листе - ПРИ ПОМОЩИ НАЗНАЧЕННЫХ МАКРОСУ ГОРЯЧИХ КЛАВИШ:
Если вы перед записью назначили макросу сочетание клавиш, то вы также можете вызвать этот макрос и нажатием данного сочетания. Горячие клавиши макросу можно назначить и после записи: Alt+F8→ Выделяем нужный макрос→ Параметры (Options) . - ПРИ НАСТУПЛЕНИИ ОПРЕДЕЛЕННОГО СОБЫТИЯ В ЛИСТЕ ИЛИ КНИГЕ: Прежде чем пробовать использовать этот метод рекомендуется изучить статью Что такое модуль? Какие бывают модули? Для этого сначала необходимо вставить код макроса в тело событийной процедуры (подробнее про событийные процедуры). Например, если выбрать процедуру листа Change, то в лист автоматически будет вставлена пустая процедура:
Private Sub Worksheet_Change(ByVal Target As Range) End Sub
Если ранее вами был записан код выделения и удаления двух столбцов – Макрос1:
Sub Макрос1() ‘ ‘ Макрос1 Макрос ‘ макрос удаляет столбцы C и D из активного листа ‘ ‘ Сочетание клавиш: Ctrl+Shift+Q ‘ Columns(«C:D»).Select Selection.Delete Shift:=xlToLeft End Sub
То для выполнения это кода при наступлении события изменения на листе можно вставить вызов этого макроса:
Private Sub Worksheet_Change(ByVal Target As Range) Call Макрос1 End Sub
или вставить сам код (без Sub и End Sub) внутрь процедуры Worksheet_Change:
Private Sub Worksheet_Change(ByVal Target As Range) Columns(«C:D»).Select Selection.Delete Shift:=xlToLeft End Sub
В каких файлах можно хранить макросы?
Как ни странно, но начиная с версии 2007 Excel не все файлы могут хранить макросы. Это значит, что если макрос был записан в файле и потом файл был сохранен в формате, который хранение макросов не поддерживает — макросы пропадут. Как правило Excel в таком случае выдаст предупреждение о том, что проект VBA в файле этого формата не может быть сохранен и будет удален, если нажать Да:
Чтобы сохранить файл с поддержкой макросов необходимо будет нажать Нет и из списка форматов выбрать тот, который поддерживает хранение макросов.
Ниже приведены форматы файлов, применяемые в Excel с описанием того, можно ли в них хранить макросы(VBA коды):
Для смены формата файла его необходимо сохранить в другом формате:
- Excel 2007 : Кнопка Офис -Сохранить как (SaveAs) -Выбрать необходимый формат файла
- Excel 2010 : Файл (File) -Сохранить как (SaveAs) -Выбрать необходимый формат файла
Теперь несложно понять, что хранить макросы в версиях Excel 2007 и выше можно в форматах: xls, xla, xlsm, xlsb, xltm, xlsm.
Статья помогла? Поделись ссылкой с друзьями!
Источник: www.excel-vba.ru
Работа с макросами Excel для чайников
Многие люди боятся использовать макросы в Excel, потому что считают их довольно сложными для понимания. Все потому, что они связаны с программированием. Но на практике все оказывается значительно проще, чем может показаться на первый взгляд. В программировании важно научиться строить алгоритмы. И если человек умеет кодить хотя бы на одном языке, ему значительно проще усвоить все остальные.
Принципы работы с макросами в Excell Online
Постепенно функции табличного редактора онлайн расширяются. Сейчас благодаря макросам, в Excel Online можно быстро выполнять однотипные действия. Вам достаточно нажать всего одну кнопку, приложение запомнило ваши шаги и сохранило их как отдельную форму множественного числа. Разберемся как работать с макросами в Эксель Онлайн, в чем заключаются принципы работы с ними, сохранять, менять, и можно ли запланировать их зпуск.
Как создать макросы в Эксель Онлайн
Определённая последовательность действий, записанная на языке программирования VBA, позволяет избавиться от рутинной работы. Тем более это важно, когда выполнение задач в Excel либо трудоемко, либо вообще невозможно встроенными инструментами. Они могут многое – от замены текста в документе до работы со строками таблицы. Чтобы создать макрос, придерживайтесь готовой инструкции:
- Открыв лист таблицы, в верхней панели инструментов выберите вкладку «Расширения».
- Перейдите на пункт «Макросы», и далее проследуйте в раздел «Записать макрос».
- Внизу экрана откроется рабочее окно, где следует выбрать тип ссылок – абсолютные или относительные.
- Перейдите к таблице и выполните все действия, которые вы планируете записать для макроса.
- Для сохранения макроса нажмите «Сохранить».
- Сервис предложит дать название созданному макросу, введите его и нажмите кнопку «Сохранить».
Обратите внимание! Создавая макрос, в таблице автоматически создается скрипт, для его изменения используйте в рабочей панели инструмент «Инструменты/Редактор скриптов».
Запуск готового макроса можно осуществить вручную, что обычно и применяется пользователями. Для этого откройте на панели «Расширения/Макросы», и выберите нужный вариант, который уже имеет у вас название.
Принципы работы с макросами в Excel
При создании автоматических действий в приложении, вы можете использовать два типа выполнения работ:
- Абсолютные ссылки. В этом случае макрос, который вы применяете, работает только в ячейке, где он записан изначально.
- Относительные ссылки. Этот вариант позволяет применить записанные действия не только к выбранной ячейке, но и с соседними с ней.
Макрос можно изменить, дав ему новое название, отредактировать его, или назначить горячие клавиши. Для этого перейдите в меню инструментов «Расширения», и выполните следующее:
- Выберите пункт «Макросы».
- В списке действий нажмите на строку «Настроить макросы».
- Внесите все нужные изменения.
- Для удаления или редактирования скрипта, используйте кнопку «Еще».
- Нажмите на кнопку «Обновить».
Макросы вы сможете использовать в ручном режиме, или запланировать их запуск. В последнем случае они будут запускаться при определенных условиях, или в определенный отрезок времени. Настройка выполняется следующим образом:
- Откройте рабочий лист таблицы.
- На панели сверху нажмите «Инструменты».
- Перейдите на пункт «Редактор скриптов».
- Выберите строчку «Изменить».
- В данных тапните по пункту «Триггеры текущего периода».
- Снизу справа на экране тапните по кнопке «Добавление триггера», и установите подходящий вариант.
- Нажмите кнопку «Сохранить».
Частые вопросы:
- Как перевести Excel Online в JPG бесплатно
- Как перевести документ Excel Online в CSV формат
- Как преобразовать документ Ворд в таблицу Excel Online
- Как преобразовать Excel Online в PDF формат
Источник: xn--e1ajew1db.xn--80asehdb