Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Shpory_inf2.docx
Скачиваний:
0
Добавлен:
01.03.2025
Размер:
54.83 Кб
Скачать

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

Макрос — это набор инструкций, указывающий последовательность действий, которые Excel должен выполнить. Макросы используются для выполнения трудоемких или часто повторяющихся задач. Язык для создания макросов — Visual Basic for Applications. VBA — это диалект языка Visual Basic, расширяющий его возможности и предназначенный для работы с приложениями Microsoft Office, другими приложениями Microsoft и независимых фирм. Однако пользователь не обязан знать этот язык, чтобы создавать простейшие макросы, так как есть возможность для записи выполняемых действий. Так как язык VBA и среда для его выполнения встроена в приложения Office, то код на языке VBA хранится внутри книги Excel, и его можно запускать прямо из документа на выполнение. Запись макросов В Excel встроен макрорекодер, который позволяет пользователю, который ничего не знает о программировании, создавать программы.Макрос — это программа (модуль) на языке VBA. Принцип работы макрорекордера больше всего похож на принцип работы магнитофона: мы нажимаем на кнопку — начинается запись тех действий, которые мы выполняем. Мы нажимаем на вторую кнопку — запись останавливается, и мы можем ее проиграть (т. е. повторно выполнить ту же последовательность действий). Конечно, макрорекордер позволяет написать только самые простые VBA-программы. Однако и он может принести много пользы. Перед тем как записывать макрос необходимо продумать, что вы будете делать и в какой последовательности. И только после того, как вы решили какую последовательность действий необходимо запомнить в виде макроса, необходимо проделать следующее: выбрать в меню Сервис | Макрос | Начать запись;появится окно «Запись макроса», в нем необходимо ввести имя Макроса, можно указать комбинацию клавиш для вызова макроса, и нажать кнопку [Ок]; появится панель инструментов «Остановка записи»; необходимо выбрать нужный режим адресации, нажав или отжав кнопку [Относительная ссылка], если вы хотите, чтобы все действия выполнялись относительно текущей ячейки, то выбираете относительную адресацию, иначе абсолютную; затем надо выполнить последовательность действий, которые вы хотите записать; нажать кнопку [Остановить запись].Выполнить полученный макрос можно: выбрав в меню Сервис | Макрос | Макросы, в появившемся диалоговом окне выбрать имя записанного макроса и нажать кнопку [Выполнить]; нажав комбинацию клавиш, которая была выбрана для вызова макроса; поместив на листе Excel объект, при выборе которого, будет происходить выполнение макроса, например, кнопку; Для этого выбираем в меню Вид | Панели инструментов | Формы, берем кнопку и кладем на лист Excel, при настройке свойств кнопки будет задан вопрос о макросе, который должен выполниться при нажатии на нее; настроить пункт меню или кнопку на панели инструментов; Для этого выбираем в меню Вид | Панели инструментов | Настройка, выбираем на вкладке Команды категорию Макросы, перетаскиваем пункт меню или кнопку в нужное нам место, выбираем новый пункт меню или нажимаем на кнопку, назначаем макрос; сделать выполняемым автоматически при открытии и закрытии файла. Присвоить имена Auto_Open() и Auto_Close(). После этого можно выполнять эти действия столько раз, сколько необходимо.

23. VBA

Во многих ситуациях макрорекордер очень удобен, но иногда требуется доработать код, который был сгенерирован макрорекодером на Visual Basic, например, чтобы добавить обработку в цикле или сообщения об ошибках. Для того, чтобы зайти в среду Visual Basic можно выполнить одно из следующих действий: Сервис | Макрос выбрать Редактор Visual Basic; нажать клавиши <Alt>+<F11>; Сервис | Макрос | Макросы кнопка [Войти]; воспользоваться кнопкой на панели инструментов Visual Basic (предварительно сделав ее видимой); редактор появится при возникновении ошибки в макросе. Появится окно редактора Visual Basic. В редакторе можно работать одновременно с работой в приложении, откуда этот редактор был вызван. На рисунке видны три окна: окно проекта (Project Explorer), окно для просмотра свойств выделенного объекта (Properties) и окно для немедленного выполнения команд в процессе отладки программы (Immediate). Всего в редакторе Visual Basic девять дополнительных окон, все они находятся в меню View, при выборе названия окна оно появится в редакторе, если было скрыто.В окне Project Explorer представлено дерево компонентов вашего приложения VBA, в нем представлены все открытые книги. Каждая книга представляет собой проект, в котором хранятся листы книги, модули (макросы), модули классов и пользовательские формы, к каждому из этих объектов можно обратиться, выбрав его двойным щелчком мыши. Можно добавить в проект новые модули, модули классов и формы, используя меню Insert или через контекстное меню в Project Explorer.

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

В окне редактора кода Code происходит редактирование модулей, чтобы открыть это окно необходимо щелкнуть дважды на названии модуля в окне Project Explorer. При вводе кода некоторые конструкции VBA вставляет автоматически. Если введено имя переменной, представляющей собой объект, и после этого поставлена точка, то автоматически откроется список всех свойств и методов этого объекта. Можно выбрать нужный пункт списка и нажать <Tab>, чтобы его содержимое было подставлено в код. 24. Работа с объектами и объектные модели

Visual Basic является объектно-ориентированным языком, поэтому в нем предусмотрена возможность работы с классами и объектами.

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

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

Метод — это именованный набор действий, которые может выполнять данный объект.

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

Объект.Метод например: oDoc.Activate Свойства объекта — это возможность получения доступа к

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

Переменная = Объект.Свойство например: sName = oApp.UserName Изменить информацию в объекте при помощи свойства можно так:

Объект.Свойство = Значение например: oApp.ActivePrinter = "HP LaserJet 4" Событие — это действие, распознаваемое объектом, для которого можно запрограммировать отклик. Например, в качестве события можно использовать открытие или закрытие документа, щелчок мыши, нажатие клавиши. Редактирование процедур, отвечающих за события нужного объекта, осуществляется с использованием Visual Basic. Наборы объектов, которые предназначены для выполнения задач, относящихся к одной области, называются объектными моделями. Объектная модель Excel представляет собой иерархию объектов, которые располагаются внутри друг друга (Application — Workbook (книга) — Worksheet (лист) — Range (диапазон)). Таким образом, приложение включает все открытые книги Excel, которые состоят из листов, а те, в свою очередь, состоят из ячеек.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]