
- •Часть 2.
- •8 Архитектура проекта
- •8.1 Введение (основные элементы проекта и их построение)
- •8.1.2 Этапы написания проекта
- •Установка (и удаление) элементов управления на лист Excel
- •Установка начальных значения свойств элементов управления
- •Установка порядка расположение элементов управления (установка одного элемента управления над другим)
- •Создание пользовательской формы
- •Создание модулей макросов проекта
- •Создание событийных процедур элементов управления, а так же событийных процедур родительских объектов
- •Быстрый переход в событийную процедуру элемента управления
- •8.1.3 Изменение свойств проекта
- •8.1.4 Установка и снятие защиты проекта
- •9 Доступность подпрограмм и полей модулей проектов
- •9.1 Введение
- •9.2 Надстройки проектов
- •9.2 Ссылка на другой проект
- •10 Отладка кода программы в vba редакторе
- •10.1 “Компиляция” проекта
- •10.2 Запуск подпрограмм, не имеющих входных параметров из редактора vba
- •10.3 Пошаговый запуск подпрограмм, не имеющих входных параметров
- •10.4 Непосредственный запуск формы из редактора vba
- •10.5 Точки останова и оператор Stop
- •10.6 Аварийное прерывание работы программы приложением Excel
- •10.7 Принудительная остановка и принудительное прерывание программы пользователем
- •10.8 Окно локальных переменных и Окно отладки
- •11 Справочная система vba
- •11.1 Переход к справочной системе
- •11.2 Список имен потомков, методов и свойств объектов в окне редактора модуля
- •11.3 Просмотр списка операторов vba в окне редактора модуля (просмотр библиотек)
- •11.4 Окно просмотра свойств, методов, потомков и родителей объектов
- •12 Дополнительная информация
- •12.1 Параметры работы редактора vba
- •12.2 Защита от макровирусов
- •12.3 Причины, по которым код vba проекта может не исполняться
- •Приложение 1 Задание 1 (автозаполнение пола)
- •Задание 2 (автозаполнение комментариев к числам)
- •Задание 3 (заучиватель иностранных слов)
- •Задание 4 (телефонная книжка с поиском)
- •Задание 5 (программирование связей таблиц Excel)
- •Задание 6 (защита служебных полей таблицы Excel)
- •Приложение 2 (Программирование через редактирование макроса) Введение
- •Запись макроса в книгу Excel
- •Запуск макроса из меню.
- •Быстрый переход в код макроса
- •Пример создание процедуры через макрос.
- •Некоторые замечания по запуску макроса из событийных процедур
- •Назначение управляющих клавиш для запуска готового макроса Назначение управляющих клавиш макросам через меню приложений
- •Программное назначение управляющих клавиш макросам
- •Приложение 3( Создание меню ) Введение
- •Типы меню приложений
- •Создание (и удаление) подпунктов главного меню через меню приложений Создание (и удаление) подпункта главного меню
- •Создание (и удаление) пункта меню к макросу
- •Удаление меню
- •Добавление пунктов в меню
- •Свойства и методы пунктов меню
- •Переключатель в пункте меню
- •Коды пиктограмм пункта меню
- •Односеансное контекстное меню
- •После выбора пункта ПервыйУровень
- •После выбора пункта ВторойУровень1 Назначение управляющих клавиш к пункту меню
- •Приложение 4 ( Программная обработка модулей vba ) Введение
- •Экспорт модуля проекта в файл
- •Импорт модуля проекта из файла
- •Импорт модуля через “организатор” (данный код только для Word приложения)
- •Создание свойств и методов пользовательского класса
- •Создание событий пользовательского класса
- •Приложение 6 (Ссылка на приложение ms Office)
- •Приложение 7 (связь с таблицами и запросами базы данных) Введение
- •Связь с базой данных через указатели
- •Непосредственная загрузка таблицы базы данных в Excel таблицу
- •Форма для интерактивной работы с записью таблицы базы данных
- •С записями таблицы базы данных
- •Браузер таблиц и запросов базы данных
- •Методы поиска объекта Recordset
- •Пример использования метода Seek
- •Пример использования методов Find
- •Приложение 8 (Обращение к api-функциям) Введение
- •Скрытие и отображение панели задач через api функции
- •Запуск ярлыка и исполняемых файлов через api функцию
- •Приложение 9 (Основные понятия визуального программирования на доступных примерах)
- •Яблоко1.Сплющить
- •8 Архитектура проекта 3
- •8.1 Введение (основные элементы проекта и их построение) 3
- •Приложение 3( Создание меню ) 64
- •Приложение 4 ( Программная обработка модулей vba ) 90
- •Приложение 5 (Создание модуля класса) 94
- •Приложение 6 (Ссылка на приложение ms Office) 108 Приложение 7 (связь с таблицами и запросами базы данных) 113
- •Часть 2
9.2 Надстройки проектов
Проект VBA сохраняется по умолчанию в файле с расширением xls. Файл с расширением xls это обычный файл Excel, а файл с расширением xla – это файл Надстройки Excel. Любой xls файл можно в Excel преобразовать в формат xla через меню “Файл-Сохранить как” и выбрать тип сохраняемого файла - Надстройка Microsoft Excel. Листы файла надстройки не видны для пользователя, и доступ к ячейкам листа xlа файла возможна только через операторы VBA.
Возможна автоматическая загрузка в Excel приложение проектов являющихся надстройкой. Для подключения новой надстройки к Excel используют меню Excel приложения Сервис-Надстройки, далее, в появившемся окне нажимают кнопку Обзор, и ищут на диске имя соответсвующего файла надстройки. Через пункт меню Сервис-Надстройки можно так же снять флажок с имени уже установленной надстройки, и тем самым отключить ее. Надстройка загружается в Excel автоматически, при открытии приложения Excel. Обращаются к полям и подпрограммам модулей проекта надстройки точно так же, как к полям и подпрограммам обычных проектов (см. 9.1 Введение), кроме того, на надстройку возможно сделать ссылку, о чем рассказано в следующем параграфе данной главы.
9.2 Ссылка на другой проект
Кроме указанных нами способов обращения к полям и модулям проектов в начале этой главы, возможно обращение к полям и подпрограммам проектов через ссылку. Ссылка может быть установлена на файл проекта, сохраненный в файле c расширением xls (Обычный файл Excel), а так же на проект находящийся в файле с расширением xla (Файл Надстройки Excel). Ссылка загружается в Excel автоматически и раньше файла проекта, который на нее ссылается. Перед тем как сделать ссылку на проект, необходимо дать ему уникальное имя. Дело в том, что имя книги Excel это не имя VBA проекта. По умолчанию все VBA проекты в Excel имеют имя VBAProject, и если сделать ссылку на одноименные проекты, произойдет конфликт имен. Как сменить имя проекта рассказано нами в 8.1.3 Изменение свойств проекта. Для установки ссылки из проекта на другой проект необходимо, прежде всего, сделать активным ссылающийся проект VBA, для этого нужно кликнуть два раза левой клавишей мыши на дереве проекта. Ссылка на другой проект производится через меню редактора VBA - Сервис-Ссылки, далее необходимо нажать в появившемся окне кнопку Обзор и найти на диске имя книги, в которой находится проект для ссылки (не забыв перед поиском файла установить тип просматриваемых файлов – Microsoft Excel Files *.xls; *.xla ).
После установки ссылки можно обращаться к соответствующим подпрограммам и полям модуля следующим образом:
ИмяПроекта.ИмяМодуля.ИмяПодпрограммы
ИмяПроекта.ИмяМодуля.ИмяПоля
Для подпрограмм и полей модулей имеющих уникальные имена, и, находящихся в модулях макросов проектов-ссылок, допустимо обращение просто по имени:
ИмяПодпрограммы
ИмяПоля
10 Отладка кода программы в vba редакторе
10.1 “Компиляция” проекта
Для просмотра синтаксических программных ошибок во всем коде проекта возможна “компиляция” проекта через меню – Отладка–Компилировать VBAProject (Debug-Compile VBAProject). В случаи обнаружения синтаксической ошибки в коде, произойдет автоматический переход на указанную строку программы и появится окно сообщающие о типе произошедшей ошибки.