Макросы Excel – экономия вашего времени. Макросы эксель


Что такое макрос и где его искать?

Хитрости » 1 Май 2011       Дмитрий       343147 просмотров

Скачать файл, используемый в видеоуроке:

  Tips_Macro_Basic_Video.xls (63,5 KiB, 2 630 скачиваний)

Наверное, многие слышали это слово "макрос", но не все имеют точное представление что это, если заглянули на эту страничку.Макрос - это макрокоманда(так звучит в правильном переводе с англ.языка), содержащая последовательность действий, записанных пользователем. Запись производится с помощью встроенного в пакет Microsoft Office языка программирования - Visual Basic for Application(VBA).

Зачем же нужны макросы? А нужны они для того, чтобы избавить Вас от рутинного выполнения одних и тех же действий. Например, Вам каждый день приходиться удалять из ежедневных отчетов по несколько столбцов и добавлять новые строки для шапки и т.п. Скучно и утомительно. Вы просто можете записать один раз все эти действия макрорекордером, а в дальнейшем только вызывать записанный макрос и он все сделает за Вас. Что немаловажно, для использования макрорекордера и записи макроса не надо обладать никакими навыками программирования.В этой статье:

 ПОДГОТОВКА К ЗАПИСИ МАКРОСАПрежде чем начать работать с макросами необходимо разрешить их выполнение, т.к. по умолчанию они отключены. Для этого необходимо сделать следующее:

  • 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)
  • После изменения параметров безопасности макросов необходимо перезапустить приложение Excel: закрыть его полностью и открыть заново. Только после этого изменения вступят в силу.

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

  • Макрорекордер записывает АБСОЛЮТНО ВСЕ ваши действия – ошибки, прокручивание экрана, переключение между листами, выделение ячеек и т.д. Поэтому перед записью своих действий необходимо сначала тщательно продумать все свои действия, чтобы в дальнейшем записать только то, что действительно необходимо записать и в дальнейшем воспроизвести. Это сократит как сам код, так и время его выполнения
  • Макрорекордер записывает действия выполненные только в пределах Microsoft Excel. Если вы переключитесь в другое приложение – действия в этой программе записаны не будут. Если закроете Excel – запись прекратится
  • Макрорекордер может записать только те действия, которые можно проделать вручную(те, которые доступны для выполнения из меню и с панелей)
  • Если во время кода вы совершили ошибочное действие и нажали кнопку отмены(Ctrl+Z) – отмененное действие не будет записано в макрос, как будто вы его просто не делали

 ЗАПИСЬ МАКРОСАДля пользователей Excel 2003 запись макроса возможна через меню:Сервис -Макрос -Начать Запись

Для пользователей Excel 2007-2010 и старше:

 ПАРАМЕТРЫ ЗАПИСИ МАКРОСАПеред записью можно задать имя записываемому макросу и назначить сочетание клавиш, при нажатии которых этот макрос будет запускаться. После нажатия кнопки для начала записи макроса появится окно:Имя макроса – не должно содержать пробелов, запятых, двоеточий и т.п. Допустимы символы кириллицы, латиницы, цифры и нижнее подчеркивание (я рекомендую давать макросам имена, содержащие только буквы латиницы). Имя макроса всегда должно начинаться с буквы и не должно совпадать со встроенным именем Excel или именем другого объекта в книге (например, не должно носить имя Workbook, Cells или ЭтаКнига). Лучше давать макросу сразу понятное имя, отражающее примерную суть того, что он делает.Сочетание клавиш – можно назначить вызов макроса сочетанием клавиш. Доступно назначение любой цифры или буквы в сочетании с Ctrl.Сохранить в – выбираете место хранения записываемого макроса. Доступны варианты:

  • Эта книга (This Workbook) – макрос будет записан в той же книге, из которой была запущена запись. Записанный макрос будет доступен из приложения только если книга открыта
  • Новая книга (New Workbook) – будет создана новая книга, в которой записан макроса. Записанный макрос будет доступен из приложения только если книга открыта
  • Личная книга макросов (Personal Macro Workbook) – самый интересный вариант. Если его выбрать, то макрос будет сохранен в отдельной книге PERSONAL.XLS (для Excel 2007 и выше - PERSONAL.XLSB). Макросы, записанные в эту книгу доступны из всех открытых книг Excel и эта книга подключается автоматически при запуске самого Excel. Т.е. однажды записав где-то макрос в эту книгу – он теперь будет доступен из любой книги независимо от того, открыта ли книга, из которой был записан макрос или нет. Изначально эта книга отсутствует и создается в момент первого обращения к ней (т.е. как только вы первый раз выбрали Сохранить в личную книгу макросов)

 ВОСПРОИЗВЕДЕНИЕ МАКРОСАПосле записи макроса запустить его можно разными способами:

  1. ПРИ ПОМОЩИ СОЧЕТАНИЯ КЛАВИШ: Alt+F8Этот способ универсальный и его можно использовать из любой версии Excel. Достаточно нажать сочетание клавиш Alt+F8 и выбрать нужный макрос из списка:
  2. ВЫЗОВ ИЗ МЕНЮ:Excel 2007-2010 и старше: вкладка Разработчик (Developer)→ Макросы (Macros)Excel 2003: Сервис→ Макрос→ Макросы
  3. НАЖАТИЕМ СОБСТВЕННОЙ КНОПКИ НА ЛИСТЕ:Можно разместить на листе собственную кнопку, по нажатии которой будет запускаться записанный макрос. Подробно этот процесс я описал в статье: Как создать кнопку для вызова макроса на листе
  4. ПРИ ПОМОЩИ НАЗНАЧЕННЫХ МАКРОСУ ГОРЯЧИХ КЛАВИШ:Если вы перед записью назначили макросу сочетание клавиш, то вы также можете вызвать этот макрос и нажатием данного сочетания. Горячие клавиши макросу можно назначить и после записи: Alt+F8→ Выделяем нужный макрос→ Параметры (Options).
  5. ПРИ НАСТУПЛЕНИИ ОПРЕДЕЛЕННОГО СОБЫТИЯ В ЛИСТЕ ИЛИ КНИГЕ:

    Прежде чем пробовать использовать этот метод рекомендуется изучить статью Что такое модуль? Какие бывают модули?Для этого сначала необходимо вставить код макроса в тело событийной процедуры (подробнее про событийные процедуры). Например, если выбрать процедуру листа Change, то в лист автоматически будет вставлена пустая процедура:

    Private Sub Worksheet_Change(ByVal Target As Range) End Sub

    Private Sub Worksheet_Change(ByVal Target As Range)

     

    End Sub

www.excel-vba.ru

Макросы Excel | Эксель Практик

Макрос Excel – это набор команд, которые записаны на языке Microsoft Visual Basic. Что важно – макрос может быть сделан без знания VBA. Microsoft Office любезно предоставил возможность записывать макросы через рекордер. Что это дает? Это дает возможность сделать какой-либо алгоритм действий, которые вы монотонно делаете изо дня в день, за секунды. Придется повозиться, но эффект сногсшибательный. Для примера: когда я начал работать в финансовом отделе, мне часто приходилось вытаскивать отчеты из 1С. Кто сталкивался, в курсе, что отчеты в формате Excel практически не готовы к работе – сортировке, например. Поэтому приходилось приводить в божеский вид – убирать ненужные строчки, отменять объединения ячеек, приведение в нужный формат и т.д. Уходило примерно полчаса. А написав макросы, я всю процедуру свел в полторы минуты, причем в основном время уходило на открытие нужных в тот момент мне файлов.

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

Итак, перед написанием макроса следует знать, что

  1. Макрос работает только с той структурой, которая существовала в момент написания. Т.е., не меняйте поля, не задавайте другие имена, не удаляйте листы, которые задействованы в макросе, иначе придется переделывать макрос по новой.
  2. Командой «Отмена» действия, которые произвел макрос не отменить.
  3. Изменить макрос можно только зная в какой-то степени язык VBA, тем, кто его не знает, придется стирать макрос и писать заново. Поэтому, чтобы этого избежать, определите по шагам (!) все действия, которые вы планируете записать в макрос.

 Чтобы записать макрос, надо выполнить команду Вид/Макросы/Записать макрос.

Надо определиться с именем макроса.

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

После того, как все команды будут вами сделаны, чтобы остановить запись макроса нужно нажать на знак «Стоп», на панели внизу слева.  Или Вид/Макросы/Остановить запись.

Запуск макроса можно сделать как по комбинации клавиш, так и из меню макросов (Вид/Макросы). Но если вы будете пользоваться часто этим макросом, рекомендую поставить его в панель быстрого доступа: Значок Офис/Параметры Excel/Настройка/Левый список (Макросы), выбрать и перенести в правое окно. Желательно для каждого макроса свой значок, чтобы не запутаться.

Если макрос вдруг в какой-то момент выдал ошибку, у вас два варианта – лезть в код макроса или переписать. Выбирайте, какой вариант вам по душе.

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

Эксель Практик

«Глаза боятся, а руки делают»

P.S. Понравилась статья? Подпишитесь на рассылку в правой части страницы (Бесплатный курс "Топ-10 инструментов Excel") и будьте в курсе новых событий.

excelpractic.ru

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

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

Чтобы отредактировать макрос, который вложен в книге Microsoft Excel, используйте редактор Visual Basic.

Важно: Перед началом работы с макросами, необходимо включить вкладки "Разработчик". Подробнее читайте вкладку "Разработчик".

Изменение параметров безопасности макросов

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

  1. На вкладке Разработчик в группе Код нажмите кнопку Безопасность макросов.

  2. В разделе Параметры макросов выберите параметр Включить все макросы (не рекомендуется, возможен запуск опасной программы), а затем нажмите кнопку ОК.

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

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

  1. На вкладке Разработчик в группе Код нажмите кнопку Макросы.

  2. В поле Имя макроса щелкните макрос, который нужно отредактировать.

  3. Нажмите кнопку Изменить, чтобы открыть редактор Visual Basic.

Совет: Для получения справки во время работы в редакторе Visual Basic в меню Справка выберите команду Справка Microsoft Visual Basic или нажмите клавишу F1.

support.office.com

Макросы Excel – экономия вашего времени

В приложениях Excel, Word и Power Point вы можете создавать собственные команды, называемые макросами. Они автоматизируют выполнение рутинной работы, когда вам приходится постоянно применять к тексту или ячейкам одинаковой оформление, вводить похожие наборы формул и т.д. Фактически, макросы – это маленькие программы, так как их запись производится в скриптах Visual Basic. Однако даже далекий от программирования пользователь может легко создавать и редактировать их.

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

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

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

Разберем, как записывать макросы в Excel 2007 при помощи макрорекордера (второй способ).Необходимые инструменты находятся во вкладке «Разработчик». Так как по умолчанию вкладка часто не отображается, сначала нужно зайти в настройки приложения. Для этого откройте круглую кнопку с изображением логотипа Microsoft и выберите «Параметры Excel». Далее «Личная настройка», «Основные параметры…», установите отметку напротив пункта, отвечающего за отображение нужной вкладки.Чтобы сделать новые макросы Excel, понадобится следующее:

  • Откройте «Разработчик» > «Код» > «Запись макроса».
  • Запишите название, из которого будет ясно, что макрос делает.
  • Выберите подходящее сочетание клавиш для быстрого вызова макроса (оно не должно дублировать ваши часто используемые горячие клавиши Windows, например, CTRL+C/CTRL+V).
  • Список «Сохранить в…» отвечает за область применения макроса. Чтобы ваши макросы Excel могли работать во всех открываемых на данном компьютере документах, выбирайте пункт «Личная книга».
  • Заполните описание (перечислите все записываемые действия).
  • Чтобы начать запись, нажмите «ОК». В углу экрана появится специальный значок.
  • Проделайте нужные действия с ячейками.
  • Нажмите «Остановить запись» во вкладке «Разработчик» > «Код».

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

Работа с меню программы (переключение вкладок) и переход к другим окнам в рекордере не записывается.

Параметры безопасности

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

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

fb.ru

Макросы в Excel 2018

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

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

Макросом называют алгоритм действий, написанным на языке программирования Visual Basic. Иногда используется специальная версия VBA (Visual Basic for Application). Существует возможность использования макросов в таких приложениях как Word, Excel, а также в иных пакетах, включенных в Microsoft Office.

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

Стоит отметить, что макросы можно прописывать и в специализированных текстовых редакторах, одним из которых является Notepad++, однако, в рамках данной статьи мы рассмотрим пример создания макроса с использованием системных методов Excel. Итак, приступаем.

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

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

Открываем вкладку Сервис, где находим пункт Макросы — Начать запись. После этого перед нами открывается окно, в котором прописываем Имя нашего макроса и сочетание клавиш, которыми он будет вызываться.

Стоит отметить, что в Excel все действия назначаются «горячими« клавишами в сочетании Ctrl+n, где в роли n может выступать абсолютно любая кнопка на клавиатуре, применимая к той или иной команде. Поэтому стоит внимательнее назначать «горячие« клавиши во избежание повторов и путаницы. Итак, выбираем в нашем случае букву «ы« и нажимаем Ок. Теперь мы находимся в режиме записи макроса и перед нами открывается небольшая вкладка с кнопкой «Остановить запись«. Нажимать ее сейчас не следует.

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

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

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

faytan.ru

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

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

Вводная часть – зачем нужны макросы

С 1993 года в разработке приложений для компьютеров началась революция, когда был создан объединённый продукт Microsoft Office, где Exel стал играть одну из ключевых ролей. Именно в это время появляется мощное дополнение VBA, позволяющее автоматизировать задачи Exel. Табличный процессор получил возможность не только предоставлять удобный интерфейс для умного пересчёта ячеек, но и стал полноценным продуктом для решения прикладных задач.

Рассмотрим на простых примерах как создавать программы. Автоматизация или программирование работы машины любит точные определения:

  • Работаем в приложении Office 365 для дома. При этом рассматриваются те возможности, которые не принципиальны при переходе на работу в расширенные версии. Например, для малого бизнеса, где наиболее полноценно раскрываются возможности табличного процессора и макросы excel 2010.
  • При описании будет использоваться интерфейс Exel 2016.
  • VBA, диалект предметно ориентированного языка Visual Basic применяемый при работе с приложениями Microsoft Office.
  • Макрос или макрокоманда — программный алгоритм действий, определённый пользователем. Кроме того, это понятие применяется для символьного имени книги-шаблона, в которой хранится код действий.
  • Используется только функциональность, предусмотренная базовым вариантом табличного процессора, использующего макросы для excel 2013.
  • Предполагается, что читатель знаком с возможностями табличного процессора, но никогда не использовал макрос в excel 2007.

Рассмотрим, как создать макрос в excel 2007 на примере решения очень простой задачи:

В течение шести дней с понедельника по субботу на склад поступал цемент. Работали разные кладовщики. Информация вносится в компьютер последовательно не сортируя.

Задача — используя информацию кладовщиков (см. рис.1) сделать сводную таблицу за неделю. Посчитать общий вес поступившего цемента и по каждому кладовщику отдельно.

Записываем первый свой макрос

На странице «Сводный» делаем шаблон исходной таблицы (смотреть рисунок).

Единственное, что надо знать для написания программы в excel — как включить макросы. По ряду существенных причин по умолчанию они отключены. На панели вкладок находим закладку «Вид» и активируем её. Если в базовой версии такой вкладки нет, то добавляем. На всплывающей панели активируем функцию «Макросы». Активируем кнопку «Запись Макроса». Теперь любое действие с таблицей будет фиксироваться и записываться в виде специальных кодов.

Выбираем имя, например «Склад».

  • Назначаем сочетание клавиш, активирующих программу – «Ctrl +Я».
  • Выбираем сохранить в таблице – «Эта книга».
  • Описание – «Сортировка данных кладовщиков».
  • Подтверждаем клавишей OK (результат действий приведён на рис.).

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

Используя стандартные операции и формулы заполняем шаблон (на рис. ниже приведена получившаяся форма).

Завершаем запись. Теперь при всех изменениях исходных данных, нажатием клавиш «Ctrl +Я», будут меняться значения в таблице-шаблоне. Даже на очень простом примере видно, как написать макрос в excel 2007.

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

  • XLSM, в отличие от стандартного варианта XLSX, таблица с таким расширением поддерживает макрокоманды.
  • XLSB обычно используется для больших таблиц и хранит информацию в бинарном формате.
  • XLTM для идентификации шаблонов с поддержкой макрокоманд.

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

Предостережения

Формат статьи не позволяет раскрыть все возможности такого мощного инструмента как Макросы и тем более работы с кодами языка VBA, на котором прописываются все действия по работе с таблицами. Желающим использовать макросы в excel самоучитель Office 365, без сомнений, будет полезен. Там же можно найти примеры макросов excel. Здесь будут даны только некоторые наиболее общие понятия.

Чтобы посмотреть VBA программный код в меню открывается вкладка «Вид» и активируется «Макросы». Появится новое окно где будут видны имена всех записанных макросов. Выбирается нужный и с помощью клика «Изменить» смотрим коды Visual Basic for Applications. При определённом опыте непосредственно в этом окне можно менять последовательность действий. Более того, наиболее сложные макросы пишутся именно в кодах VBA. Но это уже другая история. Отметит только, что средства языка позволяют автоматизировать расчёт таблиц и построение графиков любой сложности и последовательности. Экспортировать данные в Exel с документов различного формата, включая интернет-ресурсы.

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

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

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

komp.guru

Макросы в Excel

План

1.Введение.

2.Начало пути.

3.Редактирование, удаление, переименование и назначение макросов.

4.Примеры макросов.

5.Заключение.

1. Введение.

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

Макрос записывается на языке Visual Basic for Applications. Текст макроса можно вызывать для редактирования.

В следующей главе мы рассмотрим вопросы:

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

Назначение макроса клавише быстрого вызова и пункту основного меню

Назначение макроса графическому объекту и кнопке пользователя

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

2. Начало пути.

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

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

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

Выполните команду Сервис | Запись макроса | Начать запись . Появится окно диалога “Запись макроса”.

Введите в поле ввода Имя макроса название создаваемого макроса — Число. Помимо стандартной информации (когда и кем был записан макрос) вы можете ввести в поле ввода Описание краткое описание назначения макроса. После этого нажмите кнопку OK. Начиная с этого момента осуществляется запись макроса. На экране появляется кнопка Остановить макрос . Если вы нажмете на ней кнопку мыши, то запись макроса будет закончена. Другим признаком режима записи макроса является появление слова “Запись” в строке состояния.

Теперь вам нужно выполнить последовательность действий, которая и будет записана в макрос. В нашем случае последовательность действий следующая: выделите ячейки, которые вы собираетесь форматировать, и нажмите Ctrl+1; в появившемся окне диалога “Формат ячеек” выберите вкладку “Число”, а на ней категорию форматов Все форматы. Из появившегося списка форматных кодов выберите требуемый код, после чего нажмите кнопку OK.

В заключение вам остается завершить запись макроса. Кроме нажатия на кнопку Остановить макрос вы можете воспользоваться альтернативным способом: в списке опций пункта основного меню Сервис выберите Запись макроса , а затем — Остановить запись .

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

После окончания записи макроса он появляется в списке макросов под именем “Число”. Для вызова макроса выполните команду Сервис | Макрос . Появится окно диалога со списком макросов. Найдите требуемый макрос и нажмите кнопку Выполнить . Результатом работы макроса “Число” будет ввод форматного кода в выделенные ячейки таблицы.

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

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

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

Разберем два примера макросов. Один записан в обычном режиме, а другой— с относительными ссылками, после чего сравним их работу.

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

· Установите курсор в какую-нибудь ячейку книги, за исключением A1.

· Выполните команду Сервис | Запись макроса | Начать запись. Появляется окно диалога “Запись макроса”.

· Введите в поле ввода Имя макроса название создаваемого макроса Месяц_абс. В поле ввода Описание введите текст: Вводит названия месяцев. Нажмите кнопку Параметры. Появится окно диалога “Запись макроса”.

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

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

· Нажмите на кнопку Остановить макрос .

Если вы не выполните условие 1 шага, то есть курсор будет находиться в ячейке A1, то макрос будет правильно работать только в том случае, когда вы перед нажатием клавиш Ctrl+m поместите курсор в ячейку A1.

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

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

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

· Выполните команду Сервис | Запись макроса | С относительными ссылками.

· Введите в поле ввода Имя макроса название создаваемого макроса — Заголовок. В поле ввода Описание введите текст: Вводит названия компьютеров.

· Нажмите кнопку Параметры. Появится окно диалога “Запись макроса”.

· Введите наименование добавляемого пункта меню: Типы ЭВМ. Нажмите кнопку OK.

· Выполните последовательность действий, которую будет выполнять макрос: введите заголовок таблицы: Тип компьютера; нажмите клавишу Enter; введите тип 1 компьютера CP_35_SR и нажмите клавишу Tab. Аналогично введите следующие типы компьютеров CP_40_SR, CP_55_LS, CP_55_SX. Выделите четыре ячейки с введенными типами компьютеров, выберите команду Формат | Столбец, а затем команду Подгон ширины (поскольку названия типов компьютеров не умещаются полностью в ячейке).

· Нажмите на кнопку Остановить макрос .

После окончания записи макроса в меню команды Сервис появится пункт с названием Типы ЭВМ, которое мы ввели на 4 шаге.

Для выполнения макроса “Заголовок” нужно нажать кнопку мыши на пункте с названием Типы ЭВМ. В том месте таблицы, где расположен курсор, появится заголовок следующего вида: Тип компьютера CP_35_SR CP_40_SR CP_55_LS CP_55_SX

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

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

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

Одним из способов внесения изменений в записанный макрос является запись нового макроса. Однако это не всегда удобно, а часто бывает и утомительно из-за большого объема работы. В следующем примере мы изменим формат вводимых чисел в макросе “Число”.

В этом примере вам предстоит изменить текст макроса.

Для входа в режим редактирования макроса выполните команду Сервис | Макрос. Появляется окно диалога “Макрос”, в котором после выбора нужного для редактирования макроса становятся доступными кнопки, в том числе кнопка Редактирование.

Редактировать можно и непосредственно в модуле с текстом макроса. Текст макроса “Число” расположен в модуле 1, расположенном после 16 листа рабочей книги. Используя кнопки прокрутки листов найдите модуль 1 и нажмите кнопку мыши на его ярлычке. Перед вами появится текст макроса “Число”, записанный на языке Visual Basic:

Sub Число()

Selection.NumberFormat = “# #??”

End Sub

Первые две строки составляют комментарий, последующие — текст макроса. Редактирование сводится к тому, что вместо форматного кода “# #??” вводится форматный код “# #??,00”.

mirznanii.com