Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Модули Access.docx
Скачиваний:
9
Добавлен:
24.09.2019
Размер:
61.72 Кб
Скачать

Инструкция Stop

Инструкция Stop приостанавливает выполнение процедуры.

Синтаксис:

Stop

Пояснения:

Действие инструкции Stop аналогично установке в программе точки останова н:

некоторой инструкции. После останова для оценки состояния процедуры можю использовать такие средства отладки VBA, как окно отладки, кнопки Шаг i заходом в процедуры и Шаг с обходом процедур.

Инструкция While...Wend

Инструкция While... Wend используется для повторного выполнения блока инструкций до тех пор, пока условие остается истинным.

Синтаксис:

While <условие>

[<инструкции-тела-цикла>] Wend

Пояснения:

Инструкция While... Wend похожа на Do... Loop, включающую в себя предложение While; отличие в том, что для выхода из цикла Do можно использовать инструкцию Exit Do. VBA не предоставляет подобной возможности для выхода из цикла While. <условие> — это выражение, которое может оцениваться значением True (ненулевое значение) либо False (0 или Null). Выполнение блока инструкций продолжается все время, пока <условие> сохраняет значение True.

Пример:

Чтобы прочитать все строки в таблице tbICIubs, пока не встретится конец набора записей, введите:

Dim dbEntSched As Database

Dim rcdClubs As RecordSet

Set dbEntSched = CurrentDbO

Set rcdClubs = dbEntSched.OpenRecordSet("tbICIubs")

While Not rcdClubs.EOF

<инструкции-тела-процедуры>

rcdClubs.MoveNext Wend

Инструкция With

Инструкция With позволяет выполнить последовательность инструкций, не повторяя имя указанного объекта в ссылках на семейства, объекты, свойства и методы.

Синтаксис:

With <объект> [<инструкции>] End With

Пример:

Чтобы добавить новую строку в таблицу, используя краткую запись ссылок, в которых участвует объект типа Recordset, введите:

Dim rst As qdf Recordset, db As Database Set db = CurrentDbO

Set rst = db.OpenRecordset("MyTable", db.OpenDynaset, _

dbAppendOnly) With rst

' Создание новой записи

•Addnew

' Установка значений полей

![FieldOne] = "1"

![FieldTwo] = "John"

![FieldThree] = "Viescas"

.Update

.Close End With

Запуск макрокоманд

Visual Basic для приложений позволяет выполнять многие макрокоманды Прямые эквиваленты VBA существуют только для некоторых макрокоманд. Для выполнения макрокоманд используются методы объекта DoCmd.

Объект DoCmd

Пользуясь методами объекта DoCmd, вы можете выполнять макрокоманды i процедурах VBA.

Синтаксис:

DoCmd. метод [аргумент], . . .

Пояснения:

К наиболее употребительным макрокомандам, которые вы будете выполнять и;

среды Visual Basic для приложений, относятся следующие: Apply Filter (При-менитьФильтр), Close (Закрыть), DoMenuItem (КомандаМеню), FindNex) (СледующаяЗапись), FindRecord (Найти.Запись), Hourglass (ПесочныеЧасы), Maximize (Развернуть), Minimize (Свернуть), MoveSize (СдвигРазмер), Open-Form (Открытьформу), OpenQuery (ОткрытьЗапрос), OpenReport (Открыть Отчет) и ShowToolBar (ПанельИнструментов). Хотя с помощью методов объекта DoCmd можно запустить из VBA макрокоманды Echo (Вывод НаЭкран), GoToControl (КЭлементуУ правления), GoToPage (НаСтраницу), RepaintOb-ject (ОбновитьОбъект) и Requery (Обновление), более эффективным будет использование методов Echo (ВыводНаЭкран), SetFocus (УстановитьФокус), GoToPage (НаСтраницу), Repaint (Обновить) и Requery (Обновление) объектов, к которым применяются эти методы.

(fC&iaTn— Microsoft Access предоставляет встроенные константы ^^'"З—якаке для многих аргументов макрокоманд. Дополнительна^ у сведения по этому вопросу вы получите в разделе <Ко4 станты макрокоманд» справочной системы Microsoft Access

Примеры:

Чтобы открыть форму Customer для ввода данных в режиме формы, введите:

DoCmd.OpenForm "Customer", acNormal, , , acAdd Чтобы закрыть форму Supplier, введите:

DoCmd.Close acForm, "Supplier"