
- •Вопросы к экзамену Диалоговые средства асои
- •Понятие ас. Виды ас. (согласно гост 34.003-90)
- •Основные компоненты ас.????????????????????????????????????????
- •Режимы выполнения функций ас.????????????????????????????????
- •Понятие диалоговых средств ас. Виды диалоговых средств ас.
- •Состав диалоговых средств ас.
- •Структуры диалога. Характеристика диалога типа "вопрос и ответ".
- •Структуры диалога. Характеристика диалога на основе "меню". Форматы "меню", особенности разработки “меню”.
- •Структуры диалога. Диалог на основе экранных форм. Разновидности диалога. Особенности разработки.
- •Структуры диалога. Диалог на основе командного языка.
- •Разработка сценария диалога. Шаг диалога.
- •Темп ведения диалога.
- •Диалоговые панели. Компоновка элементов диалоговой панели.
- •Диалоговая панель открыть
- •Диалоговая панель сохранить как
- •Диалоговые панели найти, заменить, печать, макет страницы, шрифт, цвет
- •Вторичные окна. Окно Палитра.
- •Вторичные окна. Окно сообщений. Форматы окна сообщений.
- •Вторичные окна. Окно Сообщение. Заголовок окна сообщений. Использование кнопок в окне Сообщение.
- •Вторичные окна. Окно Сообщение. Выбор текста сообщений.
- •Вторичные окна. Всплывающие окна.
- •Структура проекта vba. Определение формы, модуля. Пользовательская функция Function и процедура Sub: определение, структура, синтаксис, особенности.
- •Данные и их описание в vba: алфавит, лексемы языка. Переменные, константы, идентификаторы: определения. Правила написания идентификаторов. Примеры. Типы данных.
- •2.4.2 Переменные и константы
- •2.4.7 Типы данных
- •Объявление переменных, констант в vba. Синтаксис. Виды констант: именованные, неименованные. Примеры. Строковые переменные. Области видимости переменных и констант в программном коде.
- •2.4.3 Объявление переменных
- •2.4.4 Объявление констант
- •2.4.5 Строковые переменные
- •2.4.6 Области видимости переменных и констант
- •Операторы в vba. Оператор присваивания: синтаксис, работа, примеры. Специальные операторы Set и With в vba. ???Соглашения по форматированию программного кода. Примеры.??????
- •2.6 Операторы, выражения и операции
- •2.6.1 Операция присваивания
- •Операторы в vba. Условный оператор: линейный (безальтернативный, альтернативный), блочный (безальтернативный, альтернативный). Структура, работа. Примеры.
- •2.8 Условный оператор
- •Операторы в vba. Оператор выбора (переключатель): структура, работа. Примеры.
- •2.9 Оператор выбора (переключатель)
- •Операторы в vba. Операторы цикла: циклы с параметром, циклы с условием (итерационные). Структура, работа, сравнительный анализ всех операторов цикла. Примеры.
- •2.10 Операторы цикла
- •2.10.1 Циклы с параметром For … Next
- •2.10.2 Циклы с условием (итерационные)
- •Объектно-ориентированное программирование в vba. Объекты ms Excel. Объектная модель Excel.
- •1.1 Особенности среды программирования
- •1.2 Запуск vba
- •1.3 Структура редактора Visual Basic
- •1.3.1 Окно проекта Project-vbaProject
- •1.3.2 Окно редактирования кода
- •1.3.3 Окно редактирования форм
- •1.3.4 Окно свойств “Properties”
- •1.3.5 Окно панели элементов управления (Toolbox)
- •Встроенные диалоговые окна в vba. Окно сообщений (вывода) MsgBox: назначение, синтаксис функции и оператора, константы процедуры. Окно ввода InputBox: назначение, синтаксис функции. Примеры.
- •3.2.1 Окна сообщений (MsgBox)
- •3.2.2 Окна ввода
- •Разработка Visual Basic-приложений. Пользовательская форма: общие сведения. Основные свойства объекта формы UserForm, основные методы формы.
- •Разработка Visual Basic-приложений. Элементы управления (панель элементов): имена объектов, их свойства, добавление в форму элементов управления. Основные свойства элементов управления.
- •Разработка Visual Basic-приложений. Элементы управления: командные кнопки (CommandButton), ярлыки (надписи) Label, текстовые окна (TextBox).
- •Разработка Visual Basic-приложений. Элементы управления: кнопки-переключатели (OptionButton) и контрольные индикаторы (CheckBox), рамки (Frame), линейки прокрутки (ScrollBar).
- •Разработка Visual Basic-приложений. Элементы управления: списки (ListBox) и комбинированные списки (ComboBox),
- •Разработка Visual Basic-приложений. Элементы управления: выключатели (TogleButton), набор вкладок (TabStrip), набор страниц (MultiPage), рисунок (Image), поле со свертыванием (RefEdit).
Объектно-ориентированное программирование в VBA. Работа с объектами. Формат программного кода, задающего установку свойства и использование метода. Примеры. Основные методы объектов. Суть программирования на VBA: событие и отклик на него. Синтаксис процедуры обработки событий. Основные типы событий: инициируемые пользователем, генерируемые системой. Основные события в VBA.
Объектно-ориентированное программирование в vba. Объекты ms Excel. Объектная модель Excel.
Объектная модель MS Excel
Объектная модель MS Excel по общим принципам идентична объектной модели MS Word. Эта модель также имеет иерархическую структуру, в корне которой находится объект Application (Excel.Application), через который обеспечивается доступ к любой коллекции или внутреннему объекту приложения MS Excel или к компонентам открытых рабочих книг. Обшая структура объектной модели MS Excel представлена на рис. 1.4.
Рис. 1.4. Объектная модель MS Excel
Как уже сказано, вершиной объектной модели MS Excel является объект Application, непосредственно включающий такие объекты и коллекции, как Selection — текущий выделенный объект, WorkBooks — коллекция открытых рабочих книг, коллекции различных элементов управления, диалоговых окон и другие свойства приложения MS Excel. Объект Selection имеет свойства текущего выделенного объекта, поэтому нет смысла рассматривать здесь структуру модели этого объекта. Если выделена ячейка, то Selection = Ячейка, если диаграмма, то Selection = Диаграмма. Когда выделена область ячеек, Selection = Коллекции столбцов и строк. Коллекция рабочих книг представляет собой список открытых рабочих книг, доступ к которым осуществляется по индексу. Каждый элемент такой коллекции представляет собой объект "рабочая книга". Панели управления, меню, кнопки, диалоги и другие объекты, предназначенные для управления приложением, собраны в соответствующие коллекции элементов управления.
Основным элементом объекта "рабочая книга" является коллекция рабочих листов. Элементом коллекции является отдельный рабочий лист, который может представлять собой обычный лист (в виде таблицы) или быть в виде диаграммы. В последнем случае он ничего, кроме диаграммы, содержать не может. Рассмотрим вариант листа в виде таблицы (рис. 1.5).
Рис. 1.5. Объектная модель листа рабочей книги
Основной объект рабочего листа, с которым приходится работать, — ячейка. Ячейка как объект сама обладает множеством свойств и объектов, входящих в нее. Из них наиболее важными и часто используемыми являются: текст, шрифт, стиль текста, границы, заливка. Чтобы получить доступ к ним, необходимо получить доступ к самой ячейке, а затем изменять ее свойства. Ячейки объединены в области ячеек Range. Свойства области ячеек во многом совпадают со свойствами самой ячейки, но есть и отличия, состоящие в задании координат и размеров области. Ячейки объединены в строки и столбцы. Объединения строк и столбцов представляют собой коллекции, доступ к которым производится по числовому индексу или по буквенному обозначению столбца. На рабочем листе могуг располагаться внешние объекты: рисунки, фрагменты документов Word, звуки, видеозаписи и другие объекты, которые объединены в коллекцию внешних OLE-объектов. Прорисовка или, точнее, воспроизведение этих объектов полностью выполняется внешними программами, зарегистрированными в системе как OLE-серверы. Доступ к таким объектам производится через элементы коллекции OLEObjects, а доступ к их свойствам возможен только через эти OLE-серверы. Приложение Excel обладает большим набором собственных графических объектов, которые можно разместить на рабочем листе. Мы можем использовать рисунки, надписи, геометрические фигуры, диаграммы, которые обычно объединены в коллекции. Например, коллекция ChartObjects содержит набор диаграмм, которые располагаются на рабочем или на отдельном листе. Каждая диаграмма, в свою очередь, также содержит набор объектов и коллекций. Рассмотрение свойств, состава и содержания диаграмм — отдельная тема этой книги (см. главу 14).
Рис. 1.6. Объектные модели диалогов Найти в Excel (а) и Найти и заменить в Word (6)
Чтобы убедиться в гибкости, универсальности и больших возможностях для программирования объектов MS Office, рассмотрим еще одну коллекцию объектов, присутствующую как в Word, так и в Excel. Это коллекция диалогов (диалоговых окон), которые пользователь обычно открывает нажатием той или иной кнопки или выбором команды меню. Она принадлежит объекту Application. В объектной модели все диалоги представлены в виде элементов коллекции Dialogs, доступ к которым обеспечивается через числовой индекс. Посредством параметров метода Show элемента коллекции происходят передача параметров в диалог и его выполнение — такова модель диалогов для приложений Excel (рис. 1.6, а), для приложений Word модель диалога несколько отличается. Отличие заключается в том, что в диалог Word параметры передаются через свойства объекта-элемента коллекции (рис. 1.6, б).
У объекта Item() наряду с типичными свойствами и методами есть присущие только ему свойства и методы. Например, у диалога Найти и заменить есть свойство Find, определяющее текст для поиска — до запуска диалога.
В Excel объект коллекции Dialogs несколько отличается от диалогов Word. Здесь рассмотрим только объектную модель коллекции диалогов для Excel в целом (рис. 1.7).
Рис. 1.7. Объектная модель коллекции диалогов Excel
На этом рисунке представлена только малая часть всевозможных диалогов коллекции — показаны диалоги, наиболее часто используемые программистами и пользователями. Обычно в диалог передаются значения, которые устанавливают значения элементов управления, а возвращаются значения True или False, в зависимости от результата действия пользователя.
Можно подвести итог: приложения из состава MS Office, например Word и Excel, представляют собой взаимосвязанные объекты и коллекции объектов. Каждый объект или коллекция включает в себя множество параметров и других объектов, коллекций. В свою очередь, сами объекты и коллекции имеют хозяина (Parent), в состав которого они входят. На вершине объектной модели находятся объекты Word.Application для текстового процессора Word и Excel.Application — для табличного прцессора Excel. Через эти объекты, в основном, и осуществляется связь этих приложений с внешними программами. Как все это работает, вы узнаете из следующих глав книги.
Программирование на VBA можно рассматривать, как управление обьектами приложения. Объектом является почти все - таблицы, книги, ячейки, диапазоны ячеек, даже сам Excel. У объектов есть свойства (например ширина, высота, цвет) и методы (такие как Select например). Доступ к свойствам и методам осуществляется через точку. Например так: Cells(1,1).Select - выделить первую ячейку первой страки в текущей таблице. Объекты могут быьт вложенными один в другой. Ячейка вложена в таблицу, таблица в книгу, книга в окно Excel. На VBA это выглядит вот так: Application.ActiveWorkbook.ActiveSheet.Cells(1,1) = 123 Записываем значение 123 в первую ячейку первой строки текущей таблицы.
Задача программиста на VBA сводится к изменению свойств объектов и вызову их методов. Для исследования объектной модели удобно использовать Object Browser. Он вызывается кнопкой на панели инструментов.
В нем показаны все объекты, их свойства и их вложенность.
Пользовательский интерфейс VBA. Особенности среды программирования, запуск VBA, структура редактора, окно проекта Project, окно редактирования кода, окно редактирования форм, окно свойств Properties, окно панели элементов управления Toolbox.