- •Программирование в среде Microsoft Office 2000
- •1. Основные сведения о vba
- •1.2. Макрорекордер в Office 2000
- •2.Основные сведения о программировании на vba
- •2.1. Алфавит и лексика языка vba
- •2.2.Правила записи текста программы на vba.
- •2.4. Данные в vba
- •2.4.1. Типы данных в vba
- •Т ипы данных в vba
- •Встроенные типы данных показаны в таблице 2.1.
- •2.4.2.Объявление переменных и констант простых типов
- •2.4.3. Массивы
- •2.5.Использование стандартных диалоговых окон для организации ввода-вывода данных
- •2.5.1.Функция MsgBox
- •2.5.2.Функция InputBox
- •2.6. Управляющие конструкции vba
- •2.6.1.Условный оператор if
- •2.6.2.Оператор выбора Select Case
- •2.6.3.Оператор цикла For … Next
- •2.6.4.Оператор цикла While…Wend
- •2.6.5.Оператор цикла Do…Loop
- •2.6.6. Оператор перехода GoTo
- •2.7. Основные сведения об объектах
- •2.7.1.Основные понятия объектно-ориентированного программирования.
- •2.7.2. Особенности использования объектов.
- •2.7.3. Коллекции в vba
- •2.7.4. Объект Application
- •2.7.5. Объекты Range и Selection
- •2.7.6. Оператор With для операций с одним объектом.
- •2.8.Обработка ошибок
- •3.Программирование в приложениях ms Office 2000.
- •3.1.Объекты excel, их свойства и методы.
- •3.1.1. Объектная модель excel
- •3.1.2. Коллекция Workbooks
- •3.1.3. Объект Workbook
- •3.1.4.Объект Worksheet
- •3.1.5.Объект Chart
- •3.1.6.Объекты Range и Selection
- •3.1.7. Пример решения задачи в excel на основе построения vba-кода.
- •3.2. Объекты word, их свойства и методы.
- •3.2.1. Модель объектов word
- •3.2.2.Объект Appication
- •3.2.3. Объект Document
- •3.2.4. Классы, задающие структуризацию текста документа.
- •3.2.5. Классы, составляющие части документа
- •3.2.5.1. Объект Range
- •3.2.5.2. Объект Selection
- •3.2.6. Классы, представляющие структуру документа
- •3.3. Автоматизация работы в Access на основе использования Access vba
- •3.3.1. Средства автоматизации работы в Access.
- •3.3.2. Объектная модель Microsoft Access
- •3.3.3.Особенности программирования в Access vba
- •3.3.3.1. Модель программирования Access
- •3.3.3.2. Особенности работы с объектами в Access vba.
- •3.3.4. Манипулирование в Access объектами Application
- •3.3.5. Объекты доступа к данным
- •3.3.5.1. Объекты dao
- •3.3.5.2. Объекты ado
- •3.3.6. Использование объектов доступа к данным в Access
- •3.3.6.1. Соединение с текущей базой данных
- •3.3.6.2. Открытие базы данных
- •3.3.6.3. Создание базы данных
- •3.3.6.4. Выполнение операций с записями
- •3.3.6.5. Перемещение по набору записей
- •3.3.6.6. Поиск записей в объектах Recordset
- •3.3.7. Пример решения задачи в Access на основе построения vba-кода
- •3.4.Совместная работа приложений Microsoft Office 2000
- •4.Список рекомендуемой литературы
Министерство образования Российской Федерации
Санкт-Петербургский государственный инженерно-экономический университет
О.Д.Мердина, Е.В.Стельмашонок
Программирование в среде Microsoft Office 2000
Учебное пособие для студентов всех специальностей СПбГИЭУ
САНКТ-ПЕТЕРБУРГ
2003
Утверждено
редакционно-издательским советом СПбГИЭУ
Составители:
кандидат экономических наук, доцент О.Д.Мердина
кандидат экономических наук, доцент Е.В.Стельмашонок
Рецензенты:
кафедра Экономической информатики и АСУ С.-ПбГУЭФ и.о. зав.каф.ЭИ и АСУ С.-ПбГУЭФ доцент А.М.Власовец
исполнительный директор ООО "ЮНАС", кадидат экономических наук, доцент В.В.Пономарев
кандидат экономических наук, доцент кафедры информационных систем в экономике СПбГИЭА К.М.Карманеева
Учебное пособие подготовлено в соответствии с программами обучения студентов по дисциплинам "Информатика", “Учебная практика по информатике» и содержит необходимые сведения о языке программирования Visual Basic for Applications для разработки пользовательских приложений в таких компонентах Microsoft Office, как Excel, Word и Access. Большое количество работающих примеров, представленных в пособии, позволяет практически освоить основные приемы программирования на VBA.
Подготовлено на кафедре вычислительных систем и программирования
Печатается в авторской редакции
Ил. 6 Библиогр. 15 назв.
1. Основные сведения о vba
1.1.VBA – язык офисного программирования
Visual Basic for Applications (VBA) – это объектно-ориентированный язык программирования, предназначенный для создания офисных документов. Под документом понимается объект, представляющий собой собрание разного типа данных и обрабатывающих их программ. Документы Office 2000 –это документы разных видов - рабочие книги Microsoft Excel, документы Word, базы данных Access и др.
Большинство приложений Office 2000 рассчитаны на визуальный способ работы с ними. Интерфейс большинства приложений построен так, чтобы дать конечному пользователю как можно больше свободы выбора по управлению работой этого приложения.
Макрос это последовательность команд, которая автоматизирует некоторые функции. Для записи макросов в офисных приложениях используется макросистема VBA (Visual Basic for Applications).
В VBA объединились возможность языков программирования высокого уровня и средства объектно-ориентированных приложений Microsoft Office. Используя стандартные методы программирования вместе с огромными библиотеками объектов, можно создавать мощные, полностью автоматизированные приложения.
VBA включает основные конструкции языка Visual Basic WINDOWS.
В VBA используются все средства программирования в WINDOWS (графические средства для создания форм, диалоговых окон, меню и панели инструментов).
Однако VBA встроен в MS Office и приложения Office, а VB- отдельная программа, разработанная для самостоятельных, автономных приложений под WINDOWS.
Язык VBA – часть среды Office 2000- позволяет создавать собственные классы объектов и работать с объектами всех этих приложений. Именно это отличает его от обычного Visual Basic и делает его языком для приложений. VBA –общий для всех приложений Office, поэтому не требуется каждый раз изучать язык программирования при необходимости автоматизации решения задач в других приложениях.
В VBA применяется объектно-ориентированный подход к разработке приложений.
Существенной особенностью VBA является его возможность работы с объектами любого из приложений Office 2000. Приложения Office 2000- Word, Excel, Access и др. представляют собой совокупность объектов. Объектами являются сами приложения и все их компоненты: документы Word, книги Excel и так далее.
Каждое приложение- WORD, ECXEL, ACCESS и др.- дополняет средства VBA своими функциональными возможностями с помощью объектов, относящихся к этому приложению.
VBA-макрос (процедура) может быть двух типов: подпрограммой и функцией.
VBA- подпрограмма –подобие новой команды, которая может быть выполнена либо пользователем, либо другим макросом. В файле приложения (например, в рабочей книге EXCEL) может содержаться произвольное число подпрограмм.
Функция всегда возвращает единственное значение. VBA-функцию можно запустить из другой VBA-процедуры или использовать в формулах точно так же, как встроенные функции приложения.
Всякий раз, когда пользователь запускает макрорекордер, создается программа (макрос)- процедура без параметров на языке VBA, которая является результатом трансляции действий пользователя с момента запуска макрорекордера до момента окончания записи макроса. Пользователь оперирует с образами объектов на экране, программа- с объектами Office 2000. Макрорекордер – это следствие объектно-ориентированного, событийно-управляемого и визуального программирования. Действия пользователя являются причиной событий в мире объектов. Возникает событие - объектом посылается сообщение – в ответ вызывается метод, обрабатывающий сообщение.
Однако макрорекордер не очень «интеллектуален»- он слепо копирует действия пользователя и не занимается оптимизацией созданной им программы. На сегодняшний день наиболее типична ситуация, когда программист использует макрос, созданный макрорекордером, как заготовку, оптимизируя код вручную.