Макросы в экселе как пользоваться. Как включить макросы в Excel

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

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

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

  • Использование Macro Recorder: В этой процедуре Excel сохраняет каждое действие, которое будет частью макроса, а затем средство записи макросов преобразует эти действия в команды Visual Basic для приложений (VBA).
  • Использование VBA: Если вы немного разбираетесь в программировании или даже владеете языком VBA, вы можете создавать свои макросы самостоятельно. Для этого просто используйте редактор VBA, присутствующий в последних версиях Microsoft Excel.

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

1) Показывать сообщение

Просто вставьте команду MsgBox в свой макрос. Вот как в следующем примере:

MsgBox "текст сообщения"


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

2) Запустите макрос при открытии листа

В некоторых случаях макрос необходимо открывать вместе с рабочим листом. В этом случае просто смонтируйте макрос с параметром Auto_Open (). Проверьте пример

Sub Auto_Open ()
MsgBox "Чтобы узнать все о Excel, перейдите на страницу www.https: //luz.vc/"
End Sub

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

3) Рабочий лист с текущей датой и временем

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

Sub writeDataEora ()
Диапазон ("A1") = Теперь
End Sub


4) Выполните одно и то же действие для каждой выбранной ячейки.

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

Sub to doSpeedCell ()
Для каждой ячейки в Selection.Cells
Ячейка MsgBox
Следующяя
End Sub

5) То же самое на всех выделенных ячейках

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

Sub to doSomethingAllAsCells ()
Selection.Cells.Value = "Привет"
End Sub


Вы можете сделать множество вставок в коде, таких как изменение цвета текста, размера шрифта, типа шрифта и многое другое.

6) Идентификация формул в каждой ячейке

Sub CheckFormula ()
Если Range ("A1") HasFormula = True, тогда
MsgBox «Есть Формула»
Еще
MsgBox "Не формула"
End If
End Sub

7) Изменить цвет ячейки при наведении мыши

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

Private Sub Worksheet_SelectionChange (ByVal Target As Range)

Димская домашняя линия как диапазон
Дальность
Dim Line2 как длинный

Cells.Interior.ColorIndex = xlNone

Line2 = Target.Row

Set Line Start = Range («A» и Line2, Target)

Закрашивает выделенную ячейку в столбце 5
Set Line = Range (ячейки (Target.Row, 1), ячейки (Target.Row, 5))

С линейкой
.Interior.ColorIndex = 12
Конец с

8) Изменение цвета внутри и шрифтов

Этот макрос изменяет цвета внутри и у источника ячеек в соответствии с буквой ячеек.

Sub Colorir_interior_letra ()
Для N = 1 до диапазона («O65536»). End (xlUp) .Row

Выберите диапазон шкалы («O» и N)
Случай "А"
Диапазон («O» и N) .Interior.ColorIndex = 3
Диапазон («O» и N) .Font.ColorIndex = 1

Случай "B"
Диапазон («O» и N) .Interior.ColorIndex = 4
Диапазон («O» и N) .Font.ColorIndex = 2

Случай "C"
Диапазон («O» и N) .Interior.ColorIndex = 5
Диапазон («O» и N) .Font.ColorIndex = 3

Случай "D"
Диапазон («O» и N) .Interior.ColorIndex = 7
Диапазон («O» и N) .Font.ColorIndex = 12

Case Else
Диапазон («O» и N) .Interior.ColorIndex = 6
Диапазон («O» и N) .Font.ColorIndex = 4
End Select

Следующий N

9) Говорящий макрос

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

Sub ExcelFalling ()

Диапазон («A1: A5»).

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

Поработав с документами Ехсеl 2010, вы можете обнаружить, что часто выполняете одни и те же задачи. Некоторые из них (такие как сохранение и закрытие файлов) выполняются достаточно бы-стро, другие включают последовательность шагов, что требует определенного времени и усилий. Вместо того чтобы каждый раз выполнять одни и те же действия вручную, можно создать МАКРО-СЫ , которые представляют собой программы, автоматизирующие выполнение заданной последовательности действий.

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

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

1. Введите имя макроса, например, Таблица Умножения в предназначенное для этого поле.

2. Добавьте в сочетание клавиш букву «у».

3. В описание добавьте текст «Таблица умножения до 100 »

4. Щелк-ните на кнопке ОК .

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

6. В ячейку А2 введите 1, выделите эту ячейку и протяните на 9 ячеек вниз. При необходимости укажите в параметрах автозаполнения флажок Заполнить .

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

8. Введите в ячейку В2 формулу: =$A2*B$1. Выделите ее и протяните сначала на 9 ячеек вниз, а затем выделенный столбец на 9 колонок вправо. Закончив, щелкните на стрелке кнопки Макросы на вкладке Вид Остановить запись

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

Удалить в разделе Ячейки на вкладке Вид , а затем щелкните на команде За-пись макроса .

2. Введите имя макроса, например, Очистка в предназначенное для этого поле и добавьте в сочетание клавиш букву «о ».

3. Выделите диапазон ячеек А1:К11 .

Макросы в разделе Макросы на вкладке Главная , а затем щелкните на команде Удалить ячейки - Удалить со сдвигом вверх .

5. Щелкните на стрелке кнопки Макросы на вкладке Вид , а затем щелк-ните на команде Остановить запись .

Запуск, изменение и удаление макроса

Щелк-ните на стрелке кнопки Макросы в разделе Макросы на вкладке Вид , а затем щелкните на команде Макросы . Появится диалоговое окно Макрос .

1. Чтобы запустить Макрос и щелкнуть на кнопке Выполнить.

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

3. Если же требуется незначительное измене-ние, можно открыть макрос в редакторе VBA и внести изменения в код макроса. Для этого достаточно выде-лить его в диалоговом окне Макрос и щелкнуть на кнопке Изменить.

4. Чтобы удалить макрос, достаточно выде-лить его в диалоговом окне Макрос и щелкнуть на кнопке Удалить.

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

Редактирование макросов осуществляется средствами Microsoft Visual Basic for Applications (VBA ) . Редактор можно запустить командой Visual Basic в группе Код вкладки Разработчик или нажатием клавиш Alt + F 11 .

Добавление кнопок макросов на вкладки

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

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

2. Выделить вкладку, например, Разработчик , и нажать кнопку Добавить группу .

3. Нажать кнопку Переименовать и ввести в поле Отображаемое имя название новой группы, например, Макросы ОК .

4. Из списка Выбрать команды щелкнуть Макросы .

5. Найти макрос ТаблицаУмножения и кнопкой Добавить Макросы.

6. Нажать кнопку Переименовать и ввести в поле Отображаемое имя ТаблицаУмножения , выбрать символ и нажать кнопку ОК .

7. Найти макрос Очистить и кнопкой Добавить включить его в созданную группу Макросы.

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

9. После нажатия кнопки ОК диалогового окна Параметры Excel на вкладке Разработчик появиться группа Макросы с командами Таблица умножения и Очистить .

Рис. 4. Добавление кнопок макросов на вкладку Разработчик

Добавление кнопки макросов на панель быстрого доступа

Новый пользовательский интерфейс Ехсеl 2010 позволяет быстро находить встроенные команды, однако потребуется несколько се-кунд, чтобы запустить макрос с помощью диалогового окна Мак-рос . В Ехсеl 2010 имеется несколько способов сде-лать макросы более доступными.

Можно упростить доступ к диалоговому окну Мак-рос , добавив кнопку Макросы на панель быстрого доступа.

1. Для этого правой кнопкой щелк-ните на стрелке кнопки Макросы в разделе Макросы на вкладке Вид .

2. В контекстном меню щелкните на команде Добавить на панель быстрого доступа.

3. На панели быстрого доступа появится кнопка Макросы , щелчок на которой открывает диалоговое окно Макрос .

Рис. 5. Добавление кнопки макросов на панель быстрого доступа

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

1. Щелкните на кнопке Настройка напели быстрого доступа в конце панели быстрого доступа.

2. Щелкните на Другие команды , чтобы отобразить страницу Настройка диалогового окна Параметры Ехсе l .

3. Щелкните на стрелке поля Выбрать команды из .

5. Щелкните на макросе, для которого нужно создать кнопку.

6. Щелкните на кнопке Добавить .

7. Щелкните на кнопке ОК .

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

Щелкните на команде Очистить группы Макросы вкладки Разработчик правой кнопкой мыши и из контекстного меню выберите Добавить на панель быстрого доступа.

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

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

При назначении макросов фигурам не следует из-менять имя макроса, которое отображается в диалоговом окне Назна-чить макрос объекту , поскольку оно содержит ссылку на объект. Изменение имени макроса разрывает эту связь и препятству-ет выполнению макроса.

Для запуска макроса ТаблицаУмножения можно создать фигуру в виде прямоугольника, а для Очистить - в виде элипса:

1. Щелк-ните на стрелке кнопки Фигуры в разделе Иллюстрации на вкладке Вставка , а затем щелкните на команде Скругленный прямоугольник .

2. Впишите фигуру Скругленный прямоугольник в диапазон ячеек М2:Р4 . Введите текст «Таблица умножения ». Установите размер шрифта введенного текста 18.

3. Щелкните на прямоугольнике правой кнопкой мыши, а затем щелкните на команде Назначить макрос ТаблицаУмножения , а затем щелкните на кнопке ОК .

4. Щелк-ните на стрелке кнопки Фигуры в разделе Иллюстрации на вкладке Вставка , а затем щелкните на команде Овал .

5. Впишите фигуру Овал в диапазон ячеек М7:Р10 . Введите текст «Очистка ». Установите размер шрифта введенного текста 18. Выровняйте надпись по центру. Измените цвет заливки фигуры на красный.

6. Щелкните на овале правой кнопкой мыши, а затем щелкните на команде Назначить макрос в контекстном меню. В диалоговом окне, которое появится, щелкни-те на макросе Очистить , а затем щелкните на кнопке ОК .

Теперь для запуска макроса достаточно щелчка по фигуре. Щелкните по фигуре Овал и с листа исчезнет таблица. Щелкните по фигуре Скругленный прямоугольник и таблица умножения вновь появиться на листе.

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

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

3. Кнопки запуска макросов можно располагать на вкладках, панели быстрого запуска или фигурах любых типов.

    В Excel и Word макросы отлично помогают, когда надо срочно посмотреть конкретный кусок объектной модели, а под рукой нет интернета, например. Правда, чаще всего придется внимательно почистить полученный код от лишних "следов" перемещения по ячейкам и других необязательных действий. Но это того стоит. Запись и просмотр макроса займет минуты 2. А вот поиск некоторых видов информации (особенно, связанной с графиками) на MSDN в контексте объектной модели может длиться часами и не факт, что окажется результативным.

    Ну, а для пользователей, не знакомых с VBA, макросы – вещь безусловно незаменимая и полезная.

Давайте рассмотрим способы создания макросов в Excel. Первым делом Вам необходимо проверить настройку безопасности для того, что бы макросы были включены, иначе ничего не получится. Перейдите главное меню «Сервис-Макрос-Безопасность »

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

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

  1. Записать с помощью соответствующего пункта меню
  2. Создать вручную

Первый способ легкий и не требует никаких знаний в программировании. Достаточно в главном меню выбрать Сервис- >Макрос->Начать запись…


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

Теперь, все что Вы будете делать в рабочей книге (добавлять, изменять, удалять, создавать сводные и т.д.) все будет записываться. Для примера напишите в ячейке B3=45, B4 = 5, а в В5 формулу «=В3+B4*10». Для остановки записи необходимо нажать соответствующую кнопку:

После завершения записи наш макрос появится в списке Сервис->Макрос->Макросы ( Alt+ F8)


Остается его только выбрать и нажать «Выполнить ».

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

Откроется следующий код:

Sub Макрос1()
Range("B3").Select
ActiveCell.FormulaR1C1 = "45"
Range("B4").Select
ActiveCell.FormulaR1C1 = "5"
Range("B5").Select
ActiveCell.FormulaR1C1 = "=R[-2]C+R[-1]C*10"
Range("B6").Select
End Sub

Sub End Sub – все макросы запускаемые через меню Сервис->Макрос->Макросы начинаются с ключевого слова Sub (процедура). Далее следует название процедуры «Макрос1», оно же имя нашего макроса которое указывается в момент начала записи. Пустые скобки обязательны! Следует учесть, что «запускаемая» процедура не должна содержать никаких параметров, иначе макрос исчезнет из списка. Все процедуры в VB завершаются командой End Sub . Sub имеет дополнительные ключевые слова Private и Public , определяющие зону видимости процедуры. Об этом будет рассказано в следующих статьях.

Range(" B3"). Select – эта и последующие команды были записаны когда мы выделяли ячейки B3, B4, B5.

ActiveCell.FormulaR1C1 – команда записывающая значение или формулу в выделенную ячейку после знака равенства. Данная запись присвоения ячейке значения и формулы не очень удобна. На следующих уроках мы будем использовать свойство Cells объекта рабочего листа Worksheet.

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

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

Ну и напоследок, видео-демонстрация записи макроса.

Видео: Запись макроса в Excel

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

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

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

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

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

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

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

Повредить файлы на ПК;
. похитить конфиденциальные данные.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Развернуть вкладку «Вид»;
. открыть «Макросы»;
. выбрать имя необходимого макроса;
. вызывать окно с его кодом при помощи кнопки «Изменить».

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

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

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

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$A$1" Then: Call module1
End Sub

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

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

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

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

Примеры

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

Sub Макрос1()

Создание макросов и их применение в Excel Разбираемые вопросы: Понятие макроса. Назначение макроса графическим изображениям. Понятие макроса Прежде чем приступить к написанию программ на VB воспользуемся простой возможностью создания программы макроса на языке VB с использованием McroRecorder. Кроме этого созданный код макроса может служить основой для дальнейших разработок.


Поделитесь работой в социальных сетях

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


Лекция №2. Создание макросов и их применение в Excel

Разбираемые вопросы:

  1. Понятие макроса.
  2. Запись простых макросов.
  3. Выполнение макросов.
  4. Редактирование макросов.
  5. Назначение макроса графическим изображениям.
  6. Удаление макросов.
  7. Ограниченность макросов.

Понятие макроса

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

MacroRecorder – это стандартное средство записи макросов в Excel , посредством которого можно записывать последовательность действий пользователя и получать соответствующий код (программу) на VBA . Программа, созданная с помощью MacroRecorder , называется макросом.

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

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

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

Макрос – это именованная последовательность заданных пользователем команд и действий, хранящаяся в форме программы на языке VBA .

Запись макросов в приложении Excel

Для работы с макросами в приложении Excel имеется специальная панель.

Для вызова этой панели необходимо выполнить последовательно команды меню: Вид → Панели инструментов → Visual Basic .

Для записи макроса необходимо:

  1. Нажать на кнопку «Запись макроса» на панели Visual Basic .
  2. В диалоговом окне «Запись макроса» присвоить имя макросу. (В имени макроса первым символом должна быть буква, не допускается использование пробелов).
  3. Выполнить действия, которые нужно записать.
  4. Нажать кнопку «Остановить запись».

Пример

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

Имеется таблица с информацией о самых ценных алмазах в мире.

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

Это действие в Excel можно выполнить с помощью стандартной функции МАКС, но мы продемонстрируем на этом примере, как сохранить последовательность действий пользователя и на их основе создать макрос.

Выполним следующие действия:

  1. Откроем новую книгу.
  2. Создадим таблицу по приведенному образцу.
  3. В ячейке D 9 наберем «Максимальная масса в граммах».
  4. На панели Visual Basic нажмем кнопку «Запись макроса». Появится диалоговое окно «Запись макроса»:

  1. Введем вместо названия «Макрос1» название макроса «Алмаз» и нажмем «ОК». На экране появится панель инструментов « Остановить запись ».

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

  1. Установим курсор в ячейку E 10. В этой ячейке должен появиться результат.
  2. Выполним команду Вставка → Функция . Появится диалоговое окно « Мастер функций ».
  3. Выберем в окне « Категории функций » « Статистические », где выберем функцию МАКС. Появится диалоговое окно, в первой строке которого необходимо указать диапазон, в котором мы будем искать максимальное значение, а – E 2: E 9. нажмем «ОК».

Выполнение макросов

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

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

  1. Установим курсор в любую ячейку листа.
  2. Выполним команду Сервис → Макрос → Макросы . Появится диалоговое окно « Макрос ».
  3. Выполнить ». В ячейке E 10 появится результат.

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

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

Выделим макрос «Алмаз» и щелкнем по кнопке « Изменить ». Откроется окно редактора:

При записи макроса выполнялись всего два действия. Сначала мы установили курсор в ячейку E 10. на языке VBA этому действию соответствует строка:

Range (“ E 10”). Select

Затем мы вызвали функцию МАКС и в качестве аргумента указали диапазон ячеек E 2: E 9:

Полученный код можно редактировать непосредственно в редакторе Visual Basic . Изменим размер шрифта в ячейке E 10 на 16:

Range (“ E 10”). Font . Size = 16

Можно также изменить цвет шрифта. Например, изменим цвет текста в ячейке на красный:

Range (E 10”). Font . ColorIndex = 3

Значения, которые может принять свойство Font . ColorIndex , изменяется от 1 до 56.

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

Sub Алмаз ()

‘ Алмаз Макрос

Range(“E10”).Select

ActiveCell.FormulaR1C1 = “=MAX(R[-8]C:R[-1]C)”

Range(“E10”).Font.Size = 16

Range(“E10”).Font.ColorIndex = 3

End Sub

Закройте окно редактора, вернитесь на лист Excel , удалите содержимое ячейки E 10 и запустите макрос на выполнение.

Назначение макроса графическим изображениям

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

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

Используя панель « Рисование », нарисуем на листе любую автофигуру. Щелкнем правой кнопкой мыши на изображении и в открывшемся контекстном меню выберем команду « Назначить макрос ». Отобразится диалоговое окно « Назначить макрос объекту ». Затем необходимо выбрать макрос «Алмаз» и щелкнуть вне графического изображения, чтобы снять выделение с объекта.

Теперь макрос «Алмаз» можно запустить посредством щелчка на автофигуре.

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

Удаление макросов из списка макросов

Для того чтобы удалить макрос, надо:

  1. Выполнить команду Сервис → Макрос → Макросы . Появится уже знакомое диалоговое окно.
  2. Выделить макрос, подлежащий удалению, и щелкнуть по кнопке « Удалить ».
  3. Подтвердить выполнение операции в специальном окне, которое появится.

Ограниченность макросов

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

Эти ограничения приводят к необходимости создания программ на VBA .

PAGE 4

Выполнение макроса

Запись

макроса

Вызов редактора VBA

Вызов панели элементов управления

Вызов конструктора форм

Вызов редактора сценариев

нопка

Панель «Формы»

Другие похожие работы, которые могут вас заинтересовать.вшм>

6386. Практическое применение функций MS Excel 219.04 KB
Microsoft Excel программа предназначена для организации данных в таблице для документирования и графического представления информации. Рабочие книги MS Excel предоставляют возможность хранения и организации данных вычисления суммы значений в ячейках...
12001. Создание производства и применение новых кислотных комплексообразующих реагентов для увеличения нефтеотдачи карбонатных и глинистых нефтяных коллекторов 18.13 KB
При этом следует учитывать что 1 часть реагента АФК эквивалентна по эффективности 10 частям состава на основе соляной кислоты что резко снижает транспортные расходы на доставку продукции на нефтепромыслы. К настоящему моменту уже произведено более 40 тонн реагента. В 2012 году проводились испытания реагента при закачке в добывающие скважины ОАО Татнефть обработано 17 скважин. Также проводятся экспериментальные работы по закачке реагента по двум технологиям в нагнетательные скважины ЗАО Предприятие Кара Алтын 2 скважины.
7988. Создание аналитической геометрии Р.Декартом. Геометрии Лобачевского, Римана и их применение 30.59 KB
Тема: Создание аналитической геометрии Р. Геометрии Лобачевского Римана и их применение. Создание аналитической геометрии Рене Декартом. Геометрии Лобачевского Римана и их применение: а геометрия Лобачевского; б создание неевклидовой геометрии; в утверждение геометрии Лобачевского; г геометрия Римана.
3861. ПОДГОТОВКА ТЕСТА В MS EXCEL 256.43 KB
ПОДГОТОВКА ТЕСТА В MS EXCEL, На Листе1 наберем вопросы а на Листе2 разместим варианты ответов список ответов должен быть вертикальным первый ответ – пустой для того чтобы после ответа первого учащегося тест можно было вернуть в первоначальное положение т. Заполним поля: Нажмем ОК и в ячейку D1 вставится следующая функция: Смысл функции в следующем: Если ответ в тестируемой ячейке C1 совпадает с верным то в ячейку D1 поместить 1 балл иначе 0 в данном случае верным будет ответ – заметно ухудшилось он имеет порядковый номер 2 потому что ответ №1 пустой. 1...
4776. ЗВЕДЕНІ ТАБЛИЦІ В EXCEL 39.01 KB
Зведені таблиці є одним з найбільш могутніх засобів MS Excel з аналізубаз даних розміщених у таблицях чи списках. Зведені таблиці зручні при аналізі даних з кількохпричин: Дозволяють створювати узагальнюючі таблиці що надають можливість групування однотипних даних підведення підсумків підведення статистичних характеристик записів...
4777. ВІКНО ПРОГРАМИ EXCEL 146.22 KB
Операції з листами Основні операції що виконуються з робочими листами зібрані в контекстному меню яке відкривається після клацання правою кнопкою миші вкладки аркуша. Воно містить команди: Додати Insert Видалити Delete Перейменувати Renme Переместіть ськопіровать Move or Copy Виділити всі листи Select ll Sheets і так далі Наприклад аби задати типа аркуша що вставляється: Аркуш Worksheet Діаграма Chrt Макрос MS Excel. Вибір типа аркуша що вставляється.
1577. Використання списків у програмі EXCEL 1.93 MB
Визначивши діапазон як список можна керувати даними в цьому списку та аналізувати їх незалежно від інших даних поза межами списку. Наприклад використовуючи лише дані у списку можна фільтрувати стовпці додавати рядок підсумків і навіть створювати звіти зведених таблиць. Визначивши діапазон як список можна керувати даними в цьому списку та аналізувати їх незалежно від інших даних поза межами списку.
7166. Назначение электронных таблиц. Знакомство с MS Excel 76.37 KB
В нижней части окна книги размещаются ярлычки листов и кнопки их прокрутки а в верхней части строка заголовка. Кроме того окно содержит листы и полосы прокрутки. Две средние кнопки служат для прокрутки на один ярлычок влево или вправо. Перечисленные кнопки прокрутки и маркер разделения ярлычков не активизируют листы книги.
7387. Статистичний аналіз даних засобами програми Excel 411.31 KB
Статистичний аналіз даних засобами програми Excel Автор: к. Засоби статистичного аналізу даних у програмі Excel. Використання статистичних функцій для інтерполяції та екстраполяції даних та інше Засоби статистичного аналізу даних у програмі Excel До складу Microsoft Excel входить набір засобів аналізу даних так званий пакет аналізу призначений...
20180. Параметры и объекты диаграмм в Microsoft Office Excel 1.01 MB
Диаграммы позволяют: отобразить данные более наглядно облегчить их восприятие помочь при анализе и сравнении наблюдать за изменениями значений. А для анализа удобно использовать диаграммы с их специальными возможностями. Результатом работы табличного процессора является документ в виде таблицы или диаграммы.