
Косарев_Экомическая информатика
.pdfПрограммирование |
|
|
381 |
Метод |
|
Действие |
|
Run |
Запускает на выполнение подпрограмму или |
||
|
макрос: Run (ИмяМакроса, Аргументы) |
||
Wait |
Временно |
приостанавливает |
работу прило |
|
жения: Wait (Time) |
|
|
OnTirae |
Назначает выполнение процедуры на опре |
||
|
деленное |
время: OnTime |
(ВремяЗапуска, |
|
ИмяПоцедуры,...) |
|
|
Quit |
Закрывает приложение |
|
|
Событие |
|
Когда происходит |
|
NewWorkBook |
При создании новой рабочей книги |
||
WorkbookActivate |
При активизации рабочей книги |
||
WorkbookBeforeClose |
Перед закрытием рабочей книги |
||
WorkbookBeforeSave |
Перед сохранением рабочей книги |
||
WorkbookDeactivate |
Когда рабочая книга теряет фокус |
||
WorkbookNewSheet |
При добавлении нового листа в рабочую |
||
|
книгу |
|
|
WorkbookOpen |
При открытии рабочей книги |
|
Основные свойства, методы и события объектов семейства Workbooks представлены ниже.
Свойство
ActiveSheet
ActiveDialog
ActiveChart Count WriteReserved
Метод Activate
Add
Protect, Unprotect
Close, Open, OpenText
Save, SaveAs
Описание и допустимые значения
Возвращает активный лист книги Возвращает активное диалоговое окно Возвращает активную диаграмму Возвращает количество объектов семейства True (False) - документ закрыт (открыт) для записи
Действие
Активизирует рабочую книгу (первый лист становится активным)
Создает новую рабочую книгу Защищают (снимают защиту) рабочую книгу от внесения изменений
Закрытие (открытие) рабочей книги, откры тие текстового файла с таблицей данных Сохранение рабочей книги (сохранение в другом файле)
382 |
Глава 8 |
Событие |
Когда происходит |
BeforeClose |
Перед закрытием рабочей книги |
BeforeSave |
Перед сохранением рабочей книги |
Deactivate |
Когда рабочая книга теряет фокус |
NewSheet |
При добавлении нового листа в рабочую |
|
книгу |
Open |
При открытии рабочей книги |
SheetActivate |
При активизации рабочего листа |
SheetDeactivate |
Когда рабочий лист теряет фокус |
Основные свойства, методы и события объекта Worksheets приведены ниже.
Свойство
Name
Visible
UsedRange
StandartHeight
ActiveCell
Intersect
Union
Метод
Activate
Add
Delete
Protect, Unprotect
Copy
Move
Описание и допустимые значения
Возвращает имя рабочего листа: Worksheets( 1 ).Ыате="Итоги"
True (False) - рабочий лист видим (невидим) на экране Возвращает диапазон ячеек рабочего листа
Возвращает стандартную высоту строк рабо чего листа
Возвращает активную ячейку рабочего листа Возвращает диапазон, представляющий пе ресечение нескольких диапазонов Возвращает диапазон, представляющий объ единение нескольких диапазонов
Действие
Активизирует рабочий лист: Worksheets (2). Activate
Создает новый рабочий лист: Active Workbook. Worksheet. Add
Удаляет рабочий лист: Worksheets (l). Delete Устанавливает (снимает) защиту рабочего листа от изменений Копирование активного рабочего листа
в другое место рабочей книги: Worksheets ("Лист 2"). Copy AfterWorksheets ("ЛистЗ")
Перемещение активного рабочего листа в другое место рабочей книги: Worksheets
("Лист2"). |
Move After:= |
Worksheets |
("Лист 3") |
|
|
Программирование |
383 |
Событие |
Когда происходит |
BeforeClose |
Перед закрытием рабочей книги |
BeforeSave |
Перед сохранением рабочей книги |
Deactivate |
Когда рабочая книга теряет фокус |
NewSheet |
При добавлении нового листа в рабочую книгу |
Open |
При открытии рабочей книги |
SheetActivate |
При активизации рабочего листа |
SheetDeactivate |
Когда рабочий лист теряет фокус |
Основные свойства и методы объекта Range приведены ниже.
Свойство |
Описание и допустимые значения |
|
Value |
Возвращает значение из ячейки или диапазона: |
|
X = Range ("A2"). Value |
||
Name |
Возвращает имя диапазона: Range ("B1:B4"). |
|
Name = "Итого" |
||
CurrentRagion |
Возвращает количество строк текущего диапа |
|
зона |
||
WrapText |
True (False) - разрешает (не разрешает) перенос |
|
текста при вводе в диапазон |
||
EntireColumn, |
Возвращает строку и столбец |
|
Возвращает ширину столбцов и высоту строк |
||
EntireRow |
||
ColumnWidth, |
диапазона |
|
RowHeight |
Возвращает объект Font (шрифт) |
|
Font |
Возвращает формулу: Range ("СЗ"). Formula = |
|
Formula |
"=$А$4+$А$10" |
|
Text |
Возвращает содержимое диапазона в текстовом |
|
|
формате |
Метод |
|
Действие |
Adress |
Возвращает адрес ячейки |
|
AutoFit |
Автоматически настраивает ширину столбца |
|
|
и высоту строки |
|
Clear, |
Очищают |
соответственно диапазон, коммента |
ClearComments, |
рии, содержание, форматы и примечания |
|
ClearContents |
|
|
ClearFormat, |
|
|
ClearNotes |
Копирует |
диапазон в другой диапазон или |
Cut |
||
|
в буфер обмена |
|
Delete |
Удаляет диапазон |
|
Insert |
Вставляет ячейку или диапазон ячеек |
|
Select |
Выделяет диапазон |
|
PasteSpecial |
Специальная вставка из буфера обмена |
384 |
Глава 8 |
Кроме методов, приведенных выше, объект Range может использовать в качестве методов команды Excel, представлен ные ниже.
Метод
DataSeries
AutoFill
AutoFilter
AdvancedFilter
Consolidate
Find
GoalSeek
Sort
Subtotal
Действие
Создает прогрессию: Объект. DataSeries (rowcol, date,step, stop, trend)
Автозаполнение автоматически заполняет ячейки диапазона элементами последовательно сти: Объект(Диапазон, Тип)
Автофильтр - реализует запрос на фильтрацию данных:
Объект.AutoFilter (Поле, Условие 1, Оператор, Условие2)
Расширенный фильтр: Объект. AdvancedFilter (Действие, Диапазон Критериев, Диапазон Ре зультата, Уникальность)
Консолидация - объединение данных из не скольких диапазонов в итоговую таблицу: Объ ект. Consolidate (Массив Исходных Диапазонов, Функция, По_расположению, Покатегориям, СвязьсИсходными Данными)
Поиск ячейки со специфицированной информа цией: 06beKT.Find (Элемент Поиска, Начальная Ячейка, Область Поиска, Часть, СтрокиСтолбцы, Направление Поиска)
Подбор параметра, являющегося решением уравнения с одной неизвестной: Объект. GoalSeek (Значение Левой Части, Ссылканаячейкуспараметром)
Сортировка в лексикографическом порядке по возрастанию или по убыванию: Объект.Sort (Поле1, Порядок1, Поле2, Порядок2, ПолеЗ, ПорядокЗ, Заголовок, Пользовательский Поря док, Регистр, Строкистолбцы)
Добавление промежуточных итогов в список данных: Объект. Subtotal (Поле, Функция, Мас сив Полей Вычисления, Замещение, Разрыв Страницы, Вывод)
Программирование |
385 |
8.3.4.ЭЛЕМЕНТЫ УПРАВЛЕНИЯ
Спомощью встроенного в VBA набора элементов управле ния и редактора форм создается пользовательский интерфейс, удовлетворяющий требованиям Windows. Элементы управления являются объектами, поэтому, как и любые объекты, они имеют свойства, методы и события. Общими для большинства элемен тов управления являются следующие методы:
Метод |
Действие |
Drag |
Обрабатывает операции Перетащить и Опус |
Move |
тить |
Отвечает на запросы программы по перемеще |
|
SetFocus |
нию объекта |
Передает фокус объекту, определенному в вы |
|
Zorder |
зове метода |
Определяет способ появления объекта впереди |
|
|
или позади других объектов |
Объекты могут реагировать на события. Различают два ос новных типа событий: инициируемые пользователем и генерируе мые системой.
События, инициируемые пользователем, возникают в резуль тате его действий (нажатие клавиши, щелчки кнопками мыши). Но есть события, являющиеся следствием действий пользователя. Например, когда пользователь щелкает в поле текста, чтобы при ступить к редактированию, для объекта TextBox вызывается со бытие Click. Но вместе с ним вызывается еще несколько собы тий: GotFocus (Получить фокус) для TextBox и LostFocus (Поте ря фокуса) - для соответствующего элемента управления.
Таким образом, любое из действий пользователя может выз вать целый набор событий. Основные действия пользователя, ге нерирующие вызов событий в "программе, - запуск программы, нажатие клавиши, щелчок кнопкой мыши и перемещение мыши.
Каждый объект генерирует свои события. Некоторые собы тия, например Click, являются общими для многих типов элемен тов управления, хотя событие Click для формы отличается от со бытия Click для кнопки команды.
Иногда свойства и методы объекта оказываются связанными в том смысле, что выполнение некоторого метода приводит к из менению свойств объекта. В свою очередь, изменение некоторых
386 |
Глава 8 |
свойств может вызвать наступление событий. Например, исполь зование метода Move (переместить) приводит к изменению свойств Left и Тор, определяющих положение объекта относительно вер хнего левого угла формы. Изменение свойств Heightили Widthформы с помощью кода вызывает событие Resize формы и т.д.
Система Windows автоматически распознает события и при каждом событии посылает программе сообщение. Программа должна интерпретировать это сообщение, т.е. определить, какое событие стоит за этим сообщением, и выполнить соответствую щие действия.
Элементы управления в форме создаются при помощи панели Элементы управления (рис. 8.10), которая включается командой меню Вид/Панель элементов. Большинство элементов управления можно располагать как на рабочем листе, так и в форме.
Режим конструктора Свойства
Флажок |
Checkbox |
Поле |
TextBox |
Кнопка |
CommandButton |
Переключатель |
OptionButton |
Список |
ListBox |
Поле со списком |
ComboBox |
Выключатель |
ToggleButton |
Счетчик |
SpinButton |
Полоса прокрутки |
ScrollBar |
Надпись |
Label |
Рисунок |
Image |
Рис. 8.10. Панель Элементы управления
\ Microsoft Excel - Книга1 |
Э |
•о |
|
|
о |
|
•и |
|
ш |
|
S |
|
г |
|
S |
|
•о |
|
ffl |
|
fi) |
|
X |
|
s |
|
(D |
Рис. 8.11. Пример установки элемента управления CommandButton |
со |
оо |
388 |
Глава 8 |
Для создания элементов управления на рабочем листе служит режим конструктора, который активизируется щелчком по кноп ке Режим конструктора. В этом режиме можно добавлять и видо изменять элементы управления. После установки элементов ре жим конструктора должен быть отключен повторным щелчком по кнопке Режим конструктора.
Чтобы задать свойства элемента управления, необходимо вы делить элемент управления и щелкнуть по кнопке Свойства Па нели инструментов (рис. 8.11).
После установки свойств элементов управления можно перей ти к написанию кода программы, обрабатывающего события, свя занные с этими элементами управления. Для этого нужно активи зировать редактор кода путем щелчка по кнопке Исходный текст на панели элементов управления. Код события записывается в соответствующей процедуре. Описание общих свойств, методов и событий элементов управления приведено ниже.
Свойство |
|
Описание |
Name |
Имя элемента управления |
|
Caption |
Надпись, отображаемая на элементе управления |
|
AutoSize |
True (False) - |
устанавливает (запрещает) режим |
|
автоматического изменения размеров элементов |
|
Visible |
управления |
|
True (False) - элемент отображается (не отобра |
||
Enabled |
жается) при выполнении программы |
|
True (False) - |
разрешает (не разрешает) ручное |
|
Height, Width |
управление элементом управления |
|
Устанавливает размеры объекта (высоту и ши |
||
Left, Top |
рину) |
|
Устанавливает координаты левого верхнего уг |
||
ControlTipText |
ла элемента управления относительно формы |
|
Устанавливает текст в окне всплывающей под |
||
BackColor, |
сказки, связанной с элементом управления |
|
Устанавливает цвет заднего и переднего плана |
||
ForeColor, |
элемента управления, а также цвет границы |
|
BorderColor |
Устанавливает тип заднего фона |
|
BackStyle |
||
BorderStyle |
Устанавливает тип границы |
|
SpecialEffect |
To же |
|
Picture |
Помещает картинку на элемент управления |
|
Tag |
Используется |
для хранения дополнительной |
|
информации об элементе управления |
Программирование |
389 |
Метод |
Действия |
Add |
Добавляет элемент во время выполнения |
|
программы |
Move |
Перемещает элемент управления |
SetFocus |
Устанавливает фокус на вызвавшем |
|
этот метод элементе |
Zorder |
Помещает объект до или после всех |
|
пересекающихся с ним объектов |
Событие |
Когда происходит |
Click |
Когда пользователь выбирает элемент |
|
управления щелчком мыши |
DblClick |
Когда пользователь выбирает |
|
элемент правления двойным |
|
щелчком мыши |
KeyPress |
Когда пользователь нажимает любую |
|
клавишу, кроме функциональных, |
|
на клавиатуре |
Change |
При изменении значения элемента |
|
управления |
GotFocus, |
Когда элемент управления получает или |
LostFocus |
теряет фокус |
Error |
Когда возникает ошибка |
8.3.5. ПОЛЬЗОВАТЕЛЬСКАЯ ФОРМА USERFORM
Пользовательская форма дает возможность создавать диало говые окна приложений. Она создается после запуска редактора VBA командой меню Вставить/UserForm. В пользовательской форме размещаются элементы управления, необходимые для уп равления приложением. Пользовательская форма, как и другие объекты, имеет свойства и события. Наиболее часто используе мые свойства объекта UserForm приведены ниже.
390 |
Глава |
Свойство |
Описание |
Name |
Возвращает имя пользовательской |
|
формы |
Caption |
Возвращает текст, отображаемый в |
|
строке заголовка формы |
BackColor |
Возвращает цвет фона формы |
Borderstyle |
Устанавливает тип границ |
Picture |
Указывает рисунок, отображаемый как |
|
фон формы |
Left и Top |
Возвращает положение верхнего левого угла |
|
формы в пунктах |
Height и Width |
Возвращает высоту и ширину формы |
|
в пунктах |
StartUpPosition |
Возвращает значение, определяющее |
|
положение формы на экране при |
|
ее первом отображении |
Наиболее часто используемые методы объекта UserForm представлены ниже.
Метод |
Описание |
Show |
Отображает форму на экране |
Hide |
Закрывает форму |
Move |
Изменяет положение и размер формы |
PrintForm |
Печатает изображение формы |
Основные события объекта UserForm описаны ниже.
Событие |
Описание |
Initialize |
Происходит при отображении формы |
|
на экране. Обычно процедуру обработки |
|
этого события используют для |
|
инициализации элементов |
|
формы |
Terminate |
Происходит при закрытии формы, |
|
когда из памяти удаляются все ссылки |
|
на форму и она прекращает свое |
|
существование |