Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
пособие_по_VBA.doc
Скачиваний:
1
Добавлен:
15.11.2018
Размер:
243.2 Кб
Скачать

Понятие макроса Excel. Два метода разработки макросов.

Макросом (или макрокомандой) Excel называется последовательность команд, снабженная именем, которая может быть выполнена автоматически.

Макрос записывается на языке программирования VBA. Используются два метода разработки макросов:

  1. С помощью среды VB

  2. С помощью макрорекодера Excel.

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

Кроме того, макрорекодер облегчает использование первого метода. Дело в том, что программу на VBA часто удобней разрабатывать не «с нуля», а начиная с прототипа, разработанного с помощью макрорекодера.

Работа макрорекодера во многом напоминает запись с помощью обычного магнитофона. Макрорекодер:

1.протоколирует операции, выполняемые пользователем

2.преобразует их в последовательность операторов VBA.

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

  1. установление сетки на листе и задание стиля ссылок R1C1;

  2. Присвоение ячейкам денежного формата;

  3. Выделение ячейки R14C5, то есть Е14.

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

  1. Сервис > Макрос > Начать запись.

  2. В текстовые поля открывшегося окна Запись макроса введем имя макроса и другую информацию (имя макроса, сочетание клавиш для запуска макроса, место хранения макроса (эта книга, все книги и тд))

  3. В окне Запись макроса с заполненными текстовыми полями кликнем на кнопке ОК. В строке состояния Excel появится сообщение Запись, свидетельствующее о том, что запись макроса началась.

  4. Установим отображение сетки в окне Excel и установим тип адресации R1C1.

  5. Зададим денежный формат для всех ячеек активного листа.

  6. Кликнем на ячейке R14C5.

  7. Кликнем на кнопке Остановить запись панели инструментов с двумя кнопками, соответствующей записи макроса или выполним Сервис > Макрос > Остановить запись. Сообщение Запись исчезнет из строки состояния, что говорит об окончании работы макрорекодера.

Способы запуска макроса.

  1. Запуск с помощью присвоенной комбинации клавиш.

  2. Запуск макроса путем выбора имени: Сервис > Макрос > Макросы > строка Имя макроса > Выполнить.

При выполнении макроса компьютер повторяет действия, перечисленные в пунктах 4-6. Для удаления макроса надо выполнить Сервис > Макрос > Макросы > строка Имя макроса > Удалить.

Пункт 11. Объекты и события.

Все современные языки программирования, в частности VB и VBA, являются объектно- и событийно-ориентированными.

Объектно-ориентированный подход подразумевает выделение обособленной части предметной области, обладающей некоторыми характеристиками (свойствами) и способами изменения этих характеристик (методами). Программная реализация этой части предметной области называется объектом.

Событийно-ориентированный подход опирается на следующие два понятия:

  1. «событие» - качественное изменение состояния объекта, возникающее в результате действий пользователя или работы компьютера;

  2. «обработчик события» - набор команд, выполняемых компьютером при возникновении события.

Примеры объектов VB – UserForm (Пользовательская форма), CommandButton (Кнопка), CheckBox (Флажок) и др. Пример события – клик на кнопке, результат обработки события – например, запуск программы.

VBA предназначен для создания программ в приложениях Microsoft Office. Отличается от VB наличием специфических объектов. Мы будем рассматривать объекты VBA, собранные в библиотеке Excel и называемые объектами Excel. Например, диапазон ячеек, книга, лист.

Синтаксис возвращения свойства объекта:

Переменная = объект.свойство

Где переменная – имя переменной.

Синтаксис установки свойства объекта:

Объект.свойство = выражение

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

[переменная = ] объект.метод

Как правило, при выполнении метода никакое значение в программу не возвращается. В этом случае часть последнего оператора, находящаяся в квадратных скобках, должна отсутствовать. Однако есть методы, при выполнении которых в программу возвращается некое значение. Но и в этом случае часть последнего оператора, находящаяся в квадратных скобках, может отсутствовать, если возвращаемое значение не представляет интерес (то есть не используется в программе).

Существует иерархия объектов. Высшим в иерархии объектов приложения является объект Application (Приложение), все остальные объекты Excel «вложены» в него.

Полная ссылка на объект состоит из ряда имен, разделенных точками. Ряд начинается с Application и заканчивается именем самого объекта. Например, полная ссылка на ячейку А1 листа Код книги Архив имеет вид:

Application.Workbooks(“Архив”).Worksheets(“Код”).Range (“A1”)

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

Если книга Архив является активной, тогда ссылку можно сократить

Worksheets(“Код”).Range (“A1”)

32