Разное

Vba access открыть форму: Макрокоманда «ОткрытьФорму» — Access

Содержание

Макрокоманда «ОткрытьФорму» — Access


Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).

Вы можете использовать макрокоманду » ОткрытьФорму » в Access для открытия форма в представление формы, Конструктор, режиме предварительного просмотра или Режим таблицы. Вы можете выбрать режим ввода данных и режимы окон для формы и ограничить записи, отображаемые формой.


Примечание: Макрокоманда «ОткрытьФорму» недоступна в веб-приложениях Access.

Настройка

Аргументы макрокоманды ОткрытьФорму описаны ниже.








Аргумент макрокоманды


Описание


Имя формы

Имя формы, которую нужно открыть. В раскрывающемся списке Имя формы указаны все формы текущей базы данных. Это обязательный аргумент.

При выполнении в база данных библиотеки макроса, содержащего макрокоманду ОткрытьФорму, Access ищет форму с этим именем сначала в базе данных библиотеки, а затем в текущей базе данных.


Режим

Представление, в котором будет открываться форма. Выберите в поле Режим значение Форма, Конструктор, Предварительный просмотр, Таблица, Сводная таблица или Сводная диаграмма. По умолчанию используется Форма.


Примечание: Представления сводной таблицы и сводной диаграммы были удалены из Access, начиная с Access 2013.


Примечание: Значение аргумента Режим переопределяет параметры свойств формы DefaultView и ViewsAllowed. Например, даже если свойству формы ViewsAllowed присвоено значение Таблица, можно использовать макрокоманду ОткрытьФорму для открытия формы в представлении формы.


Имя фильтра

фильтр, который ограничивает или сортирует записи формы. Вы можете ввести имя либо существующий запрос, либо фильтр, сохраненный в виде запроса. Тем не менее, запрос должен содержать все поля в форме, которые вы открываете, или свойство » вывод «, для которого задано значение «Да».


Условие отбора

Допустимое предложение WHERE SQL (без слова WHERE) или выражение, которое Access использует для выбора записей из базовой таблицы или запроса формы. Если выбрать фильтр с аргументом Имя фильтра, Access применит это предложение WHERE к результатам фильтрации.

Для открытия формы и ограничения записей в ней на основе значения элемента управления, находящегося в другой форме, используйте следующее выражение:


[
имя_поля
] = Forms![
имя_формы
]![
имя_элемента_управления
_в_другой_форме
]

Замените имя_поля именем поля базовой таблицы или запроса формы, которую вы хотите открыть. Замените имя_формы и имя_элемента_управления_в_другой_форме именем другой формы и именем элемента управления, содержащего значение, которому должны соответствовать записи в первой форме.


Примечание: Максимальная длина аргумента Условие отбора равна 255 символам. Если необходимо ввести более сложное и длинное предложение WHERE, вместо этого используйте метод ОткрытьФорму объекта DoCmd в модуле Visual Basic для приложений (VBA). VBA позволяет вводить предложения WHERE SQL длиной до 32 768 символов.


Режим данных

Режим ввода данных для формы. Применим только для форм, открытых в режиме формы или таблицы. Возможные варианты значений: Добавление (пользователь может добавлять новые записи, но не может редактировать существующие), Изменение (пользователь может редактировать существующие записи и добавлять новые) или Только чтение (пользователь может только просматривать записи).


Примечания

  • Значение аргумента Режим данных переопределяет значение свойств формы AllowEdits, AllowDeletions, AllowAdditions и DataEntry. Например, даже если свойство формы AllowEdits имеет значение Нет, можно открыть форму в режиме редактирования с помощью макрокоманды ОткрытьФорму.

  • Если этот аргумент оставить пустым, то Access откроет форму в режиме ввода данных, определяемом свойствами AllowEdits, AllowDeletions, AllowAdditions и DataEntry.


Режим окна

Режим окна, в котором открывается форма. Возможные значения: Обычное (форма открывается в режиме, определяемом ее свойствами), Скрытое (форма скрыта), Значок (форма свертывается и отображается в виде небольшого заголовка окна в нижней части экрана) или Диалоговое окно (для свойств Modal и PopUp формы задается значение Да). По умолчанию используется значение Обычное.


Примечание: Некоторые значения аргумента Режим окна неприменимы, если используются документы со вкладками. Чтобы переключиться в режим перекрывания окон:

  1. Откройте вкладку Файл и выберите пункт Параметры

  2. В диалоговом окне Параметры Access щелкните элемент Текущая база данных.

  3. В разделе Параметры приложений в группе Параметры окна документа выберите параметр Перекрывание окон.

  4. Нажмите кнопку ОК, а затем закройте и снова откройте базу данных.

Замечания

Эта макрокоманда аналогична двойному щелчку формы в области навигации или ее щелчку правой кнопкой мыши в области навигации и выбору представления.

Форма может быть модальный (ее необходимо закрыть или скрыть, прежде чем пользователь сможет выполнять какие-либо другие действия) или немодальные (пользователь может перемещаться в другие окна, пока открыта форма). Это также может быть всплывающая форма (форма, используемая для сбора и отображения данных, которые остаются в верхней части других окон Access). Свойства модальных и всплывающих окон задаются при разработке формы. Если для аргумента » режим окна » используется значение » обычный «, форма открывается в режиме, указанном в параметрах этого свойства. Если вы используете диалоговОе окно для аргумента режим окна , для этих свойств задано значение «Да». Форма, открытая как скрытая или в виде значка, возвращается к режиму, заданному параметрами ее свойств при ее отображении или восстановлении.

При открытии формы с аргументом Режим окна, имеющим значение Диалоговое окно, Access приостанавливает работу макроса, пока форма не будет закрыта или скрыта. Форму можно скрыть, установив с помощью макрокоманды ЗадатьЗначение значение Нет для ее свойства Visible.

Применяемые фильтр и условие WHERE становятся значением свойства Filter формы.


Совет: Вы можете выбрать форму в области навигации и перетащить ее в окно макроса. При этом автоматически создается макрокоманда «ОткрытьФорму», открывающая ее в представлении формы.

Пример

Задание значения элемента управления в форме с помощью макроса

Следующий макрос открывает форму «Товары» с помощью кнопки в форме «Поставщики». Он демонстрирует применение макрокоманд ВыводНаЭкран, ОткрытьФорму, ЗадатьЗначение и КЭлементуУправления. Макрокоманда ЗадатьЗначение задает в качестве значения элемента управления «Код поставщика» в форме «Товары» текущего поставщика в форме «Поставщики». После этого макрокоманда КЭлементуУправления перемещает фокус на поле «Код категории», с которого начинается ввод данных для нового товара. Этот макрос должен быть привязан к кнопке «Добавить товары» в форме «Поставщики».






Макрокоманда


Аргументы: параметр


Примечание


ВыводНаЭкран


Включить вывод: Нет

Приостанавливает обновление экрана, пока выполняется макрос.


ОткрытьФорму


Имя формы: Товары


Представление: Форма


Режим данных: Добавление


Режим окна: Обычное

Открывает форму «Товары».


ЗадатьЗначение


Элемент: [Forms]![Товары]![КодПоставщика]


Выражение: КодПоставщика

Задает в качестве значения элемента управления «КодПоставщика» текущего поставщика в форме «Поставщики».


КЭлементуУправления


Имя элемента управления: КодКатегории

Выполняет переход к элементу управления «КодКатегории».

Microsoft Access. Создание формы в VBA

Проектирование форм — самый сложный этап проектирования базы данных. Формы постоянно находятся в движении. Их переделывают, удаляют, изменяют и никто не бывает довольным текущим решением.

Создание форм в базе данных Access сложный и трудный этап программирования. Давайте напишем общую функцию, которая будет сама создавать нам форму и изменит ее настройки так, чтобы она выглядела красиво и с минимальным количеством объектов управления. Имя формы будет «Мой калькулятор» и запишем ее в переменную strForm.

Внешний вид панели элементов в режиме дизайнера Access 2016, т.е. тогда когда пользователь изменяет форму программы.

   
Public Function funCreateForm(strForm As String) As Boolean

        Dim frm As Form

        On Error GoTo 999 ‘Переход по ошибке

        funCreateForm = False ‘Значение возвращаемое по ошибке

        funDeleteForm strForm ‘Удаляем старую форму

        frm = appAccess.CreateForm ‘Создаем новую форму

        With frm ‘Изменяем параметры формы

            .Caption = «Мой калькулятор» ‘Вставляем заголовок

            .ScrollBars = 0 ‘Гасим полосы прокрутки

            .RecordSelectors = False ‘Гасим область выделения

            .NavigationButtons = False ‘Гасим кнопки перехода

            .DividingLines = False ‘Гасим разделительные линии

            .AutoCenter = True ‘Выравниваем форму по центру

            .BorderStyle = 3 ‘Устанавливаем диалоговую границу

            .Section(0).Height = 3.862 * appCM ‘Изменяем высоту окна

            .Width = 10.926 * appCM ‘Изменяем ширину окна

            .HasModule = True ‘Разрешаем программы в форме

        End With

        funRestoreFormControls frm  ‘Создаем элементы формы

        funInsertFormModule frm ‘Создаем модуль формы

        appAccess.DoCmd.Save, strForm ‘Сохраняем форму

        appAccess.DoCmd.Close(acForm, strForm, acSaveYes) ‘Закрываем форму

        funCreateForm = True ‘Возвращаем результат

        Exit Function ‘Выход из программы

999:

        MsgBox Err.Description ‘Сообщаем об ошибке

        Err.Clear() ‘Очищаем поток от ошибок

    End Function

Удаление формы

На этом этапе напишем программу для удаления формы strForm («Мой калькулятор»). Программа работает так, что если формы нет в базе данных, то программа выходит по ошибке через метку 999 и нам надо очистить поток от нее, чтобы в дальнейшем не было сообщений.

    Public Function funDeleteForm(strForm As String) As Boolean

        Dim frm As Form

        On Error GoTo 999 ‘Переход по ошибке

        funDeleteForm = False ‘Возвращаемое значение при ошибке

        appAccess.DoCmd.DeleteObject(acForm, strForm) ‘Удаляем форму

        funDeleteForm = True ‘Возвращаем значение

        Exit Function

999:

        Err.Clear() ‘Очищаем поток от ошибок

    End Function

Создание элементов формы

Теперь нам надо написать программу, которая создаст управляющие элементы, т.е. метки, кнопки и список формы, восстанавливая их из таблицы базы данных, например, «Калькулятор-форма». Этот метод необходимо изучить потому, что таким образом  можно легко восстановить любой шаблон формы и в дальнейшем модифицировать его.

    Public Function funRestoreFormControls(frm As Form) As Boolean

        Dim ctl As Control, rst As Recordset, dbs As Database, i As Integer

        On Error GoTo 999 ‘Переход по ошибке

        funRestoreFormControls = False ‘Возврат значения по ошибке

        dbs = CurrentDb ‘Выбираем текущую базу данных

        rst = dbs.OpenRecordset(«SELECT * FROM [Калькулятор-форма]»)

        If rst.RecordCount = 0 Then  ‘Проверяем запрос

            rst.Close() ‘Закрываем запрос

            Exit Function  ‘Выходим из программы

        End If

        With rst ‘Создание элемента из запроса

            .MoveLast() ‘Заполняем запрос данными

            .MoveFirst() ‘Переходим на 1 запись

            For i = 0 To .RecordCount — 1 ‘Выполняем восстановление для каждой записи

                Select Case rst!ControlType

                    Case acCommandButton ‘Создаем Кнопку

                        ctl = appAccess.CreateControl(frm.Name, rst!ControlType, , «», «», rst!Left, rst!Top, rst!Width, rst!Height)

                        ctl.OnClick = «[Event Procedure]» ‘Включаем обработку нажатия

                        ctl.Caption = rst!Caption ‘Меняем название

                        ctl.ControlTipText = rst!ControlTipText ‘Устанавливаем подсказку

                    Case acLabel ‘Создаем Надпись

                        ctl = appAccess.CreateControl(frm.Name, rst!ControlType, , «», rst!Caption, rst!Left, rst!Top, rst!Width, rst!Height)

                        ctl.BackColor = !BackColor ‘Меняем фон

                    Case acTextBox ‘Создаем Поле

                        ctl = appAccess.CreateControl(frm.Name, rst!ControlType, , «», «», rst!Left, rst!Top, rst!Width, rst!Height)

                        ctl.SpecialEffect = 0 ‘Выбираем стандартное выделение

                        ctl.BorderColor = 0 ‘Выбираем черный цвет

                        ctl.BorderStyle = 1 ‘Выбираем обычную границу

                    Case acListBox ‘Создаем Список

                        ctl = appAccess.CreateControl(frm.Name, rst!ControlType, , «», «», rst!Left, rst!Top, rst!Width, rst!Height)

                        ctl.SpecialEffect = 0 ‘Выбираем стандартное выделение

                        ctl.BackColor = rst!BackColor ‘Меняем фон списка

                        ctl.BorderColor = 0 ‘Выбираем стандартное выделение

                        ctl.ColumnCount = 2 ‘Устанавливаем число колонок

                        ctl.ColumnWidths = «7,932 см;1 см» ‘Устанавливаем размер колонок

                        ctl.RowSource = «запросСписокКалькулятора» ‘Выбираем запрос для списка

                End Select

                ctl.Name = rst!Name ‘Изменяем имя элемента

                ctl.ForeColor = !ForeColor ‘Изменяем цвет символов

                rst.MoveNext() ‘Переходим на следующую запись

            Next i

        End With

        rst.Close() ‘Закрываем запрос

        funRestoreFormControls = True ‘Возвращаем результат

        Exit Function ‘Выходим из программы

999:

        MsgBox Err.Description ‘Сообщаем об ошибке

        Err.Clear() ‘Очищаем поток от ошибок

    End Function

Вставить в форму модуль

После создания формы, напишем программу, которая вставит «модуль программ» на Бэйсике в нашу форму. Это необходимо для того, чтобы обеспечить обработку событий формы, например, таких как открытие, загрузка,  нажатие кнопок.

Далее в лекциях идет перечисление событий. Они отмечены на рисунках кнопкой.

Public Function funInsertFormModule(frm As Form) As Boolean

Dim s As String, mdl As Module

        On Error GoTo 999 ‘Переход по ошибке

        s = appFolder & «\Программы\Form_Мой калькулятор.bas»

        If Dir(s) <> «» Then ‘Проверяем файл

            frm.Module.AddFromFile s ‘Добавляем модуль

        End If

        Exit Function ‘Выходи из программы

999:

        MsgBox Err.Description ‘Сообщаем об ошибке

        Err.Clear() ‘Очищаем поток от ошибок

    End Function

Открытие формы

Обработка события. Данная функция начинает работать при открытии формы. В ней мы размещаем информацию о предварительных настройках окна калькулятора, до его отображения на экране.

Private Sub Form_Open(Cancel As Integer)

    subBarOff() ‘Выключить все меню и строку состояния

    ‘Настроить всплывающие подсказки кнопок

    Me.кнВыход.ControlTipText = «Выход из программы»

    Me.кнПечать.ControlTipText = «Печать отчета о расчетах»

    Me.кнРасчет.ControlTipText = «Расчет данных на калькуляторе»

    Me.кнСброс.ControlTipText = «Сбросить все вычисления»

    ‘Меняем настройки окна, установленные по умолчанию

    Me.Caption = «Мой калькулятор» ‘Заголовок

    Me.ScrollBars = 0 ‘Полосы прокрутки

    Me.RecordSelectors = False ‘Область выделения

    Me.NavigationButtons = False ‘Кнопки перехода

    Me.DividingLines = False ‘Разделительные линии

    ‘Меняем настройки списка задач

    Me.Список.BackColor = 8421376 ‘Цвет фона символов

    Me.Список.ForeColor = RGB(255, 255, 255) ‘Цвет символов

    ‘Устанавливаем события

    Me.Выражение.AfterUpdate = «[Event Procedure]» ‘После обновления

    Me.кнВыход.OnClick = «[Event Procedure]» ‘Нажатие кнопки

    Me.кнПечать.OnClick = «[Event Procedure]» ‘Нажатие кнопки

    Me.кнРасчет.OnClick = «[Event Procedure]» ‘Нажатие кнопки

    Me.кнСброс.OnClick = «[Event Procedure]» ‘Нажатие кнопки

    ‘Настраиваем параметры приложения

    DoCmd.RunCommand acCmdAppMaximize ‘Увеличиваем приложение

    On Error Resume Next ‘Отключаем диагностику ошибок меню

    Me.MenuBar = «Калькулятор» ‘Устанавливаем меню

    Err.Clear() ‘Очищаем поток от ошибки

End Sub

Расчет выражения

Обработка события. Эта программа нужна для того, чтобы после того, как пользователь введет свое выражение и нажмет кнопку «Enter», произошли необходимые расчеты, и список вычислений калькулятора обновился.

   Private Sub

Общие сведения о программировании в Access


Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).

Создавая базу данных, вы обычно начинаете с создания нескольких объектов базы данных, таких как таблицы, формы и отчеты. Рано или поздно наступает момент, когда нужно добавить программный код, чтобы автоматизировать определенные процессы и связать объекты базы данных друг с другом. Прочитав эту статью, вы получите представление о средствах программирования в Access.

В этой статье



Программирование


Выбор в пользу макросов или кода VBA


Выполнение распространенных задач программирования с помощью мастера кнопок


Макросы


Код VBA


Преобразование макросов в код VBA

Программирование

В Access программированием называется процесс добавления функциональных возможностей в базу данных с помощью макросов Access или кода Visual Basic для приложений (VBA). Например, предположим, что вы создали форму и отчет и хотите добавить в форму кнопку, которая при щелчке закроет отчет. Программирование в этом случае — это процесс создания макроса или процедуры VBA, а затем задание свойства события OnClick для кнопки , которое запускает выполнение макроса или процедуры нажатием кнопки. Для простой операции, например открытия отчета, можно использовать мастер кнопок для выполнения всех задач, а также можно отключить мастер и выполнить программирование самостоятельно.


Примечание: Во многих программах Microsoft Office термин «макрос» относится к коду VBA. Это может запутать пользователей Access, так как в этом приложении термин «макрос» относится к именованному набору макрокоманд, для создания которого используется конструктор макросов. Макрокоманды Access — это лишь часть команд, доступных в VBA. Конструктор макросов обладает более структурированным интерфейсом, чем редактор Visual Basic, что позволяет добавлять программный код к элементам управления и объектам без необходимости изучать код VBA. Следует помнить, что в статьях справки Access макросы Access называются просто макросами. С другой стороны, код VBA может называться VBA, кодом, функцией или процедурой. Код VBA содержится в модулях классов (это части отдельных форм и отчетов, обычно содержащие код только для этих объектов), а также в модулях (они не привязаны к определенным объектам и обычно содержат «глобальный» код, который можно использовать во всей базе данных).

Объекты, например формы и отчеты, и элементы управления, такие как кнопки и текстовые поля, обладают разными свойствами событий, к которым можно прикреплять макросы или процедуры. Каждое свойство события связано с определенным событием, например со щелчком мышью, открытием формы или изменением данных в текстовом поле. События могут также инициироваться факторами извне Access, например системными событиями, а также макросами или процедурами, прикрепленными к другим событиям. Если добавить много макросов или процедур к нескольким свойствам событий для большого числа объектов, база данных может получиться сложной, но в большинстве случаев для достижения нужных результатов потребуются минимальные усилия по программированию.


К началу страницы


Выбор в пользу макросов или кода VBA

Решение в пользу макросов, кода VBA или обоих методов зависит главным образом от того, как вы планируете развертывать и распространять базу данных. Например, если база данных хранится на вашем компьютере, вы единственный пользователь и хорошо разбираетесь в коде VBA, целесообразно использовать VBA для большинства задач по программированию. Если же вы собираетесь поделиться базой данных с другими людьми, разместив ее на файловом сервере, возможно, лучше обойтись без VBA из соображений безопасности.

Принимая решение об использовании макросов или кода VBA, вы должны учесть два аспекта: безопасность и необходимую функциональность. Безопасности следует уделить особое внимание, так как VBA можно использовать для создания кода, который способен нарушить защиту данных или повредить файлы на локальном компьютере. Если вы используете базу данных, созданную не вами, не включайте код VBA, если не уверены в том, что база данных получена из надежного источника. Создавая базу данных, предназначенную для других людей, не используйте средства программирования, которые могут привести к тому, что пользователям потребуется явно предоставить ей статус надежной. Чтобы избежать такой ситуации, воспользуйтесь распространенными приемами, описанными ниже в этом разделе.

Чтобы обеспечить безопасность базы данных, применяйте макросы везде, где это возможно, а программирование с помощью VBA используйте только для операций, которые невозможно выполнить с помощью макрокоманд. Более того, следует использовать только такие макрокоманды, для выполнения которых не требуется предоставлять базе данных статус надежной. При таком ограничении использования макрокоманд пользователи будут уверены в том, что база данных не содержит программного кода, который может повредить данные или другие файлы на их компьютерах.

Рекомендации по использованию макросов

Начиная с выпуска 2010 в Access предлагается много новых макрокоманд, с помощью которых можно создавать более функциональные макросы, чем в более ранних версиях приложения. Например, теперь можно с помощью макрокоманд создавать и использовать глобальные временные переменные, а также более изящно обрабатывать ошибки, применяя новые специализированные макрокоманды. В более ранних версиях Access это можно было сделать только с помощью кода VBA. Кроме того, можно внедрить макрос прямо в свойство события объекта или элемента управления. Внедренный макрос становится частью объекта или элемента управления и сохраняется при их перемещении и копировании.

Макросы предоставляют простой способ обработки многих задач программирования, таких как открытие и закрытие форм и запуск отчетов. Вы можете быстро и легко привязать объекты базы данных (формы, отчеты и т. д.), созданные вами из-за незначительного синтаксиса, который необходимо запомнить. Аргументы для каждого действия отображаются в поСтроителе макросов.

Макросы обеспечивают повышенную безопасность и просты в использовании. Кроме того, их необходимо применять для выполнения следующих задач:

  • Назначение действия или набора действий ключу. Для этого необходимо создать группу макросов с именем AutoKeys.

  • Выполнение действия или последовательности действий при первом открытии базы данных. Для этого необходимо создать макрос с именем AutoExec.


    Примечание:  Макрос AutoExec запускается раньше, чем любой другой макрос или код VBA, даже если вы назначили в диалоговом окне Параметры Access начальную форму и прикрепили к ее событию OnOpen или OnLoad макрос или код VBA.

Дополнительные сведения о создании макросов см. в разделе Макросы.

Рекомендации по использованию VBA

Программный код VBA следует использовать вместо макросов, если вы хотите сделать следующее:


  • Использовать встроенные функции или создать собственные.    В Access есть множество встроенных функций, например IPmt, которая вычисляет процентные платежи. С помощью этих встроенных функций можно выполнять вычисления, не создавая сложных выражений. Используя код VBA, вы также можете создать собственные функции для выполнения вычислений, которые требуют создания слишком сложных выражений или не могут быть выполнены с их помощью. Кроме того, созданные функции можно включать в выражения, что позволяет выполнять часто используемые операции с разными объектами.


  • Создавать объекты и обрабатывать их.    Вы увидите, что в большинстве случаев проще всего создать или изменить объект в режиме конструктора. Но в некоторых случаях вам может потребоваться изменить определение объекта в коде. С помощью VBA можно обрабатывать все объекты в базе данных, а также манипулировать самой базой данных.


  • Выполнять действия на уровне системы.    Чтобы запустить из Access другую программу (например, Microsoft Excel), можно выполнить макрос с макрокомандой RunApp, но в целом возможности применения макросов для выполнения действий вне Access ограничены. С помощью VBA можно проверить, существует ли на компьютере определенный файл, воспользоваться технологией Automation или DDE для взаимодействия с другими программами для Microsoft Windows, такими как Excel, и вызвать функции из библиотек DLL в Windows.


  • Обрабатывать записи поочередно.    Используя код VBA, можно обработать набор записей, выполнив поочередно операцию над каждой из них. В то же время макрос обрабатывает все записи из набора одновременно.


К началу страницы


Выполнение распространенных задач программирования с помощью мастера кнопок

Добавьте в форму кнопку, и мастер кнопок поможет вам приступить к программированию. С помощью мастера вы сможете создать кнопку для выполнения определенной задачи. В файле Access (ACCDB) мастер создает макрос, внедренный в свойство OnClick этой кнопки. В MDB- или ADP-файле мастер создает код VBA, так как в этих форматах не поддерживаются внедренные макросы. В любом случае вы можете затем изменить или дополнить макрос или код VBA в соответствии со своими потребностями.

  1. В области навигации щелкните правой кнопкой мыши форму, в которую нужно добавить кнопку, и выберите пункт Конструктор.

  2. На вкладке Конструктор щелкните стрелку вниз, чтобы открыть коллекцию Элементы управления, и убедитесь в том, что пункт Использовать мастера выделен.

  3. На вкладке Конструктор в коллекции Элементы управления щелкните элемент Кнопка.

  4. На бланке формы щелкните там, где нужно поместить кнопку.

    Откроется мастер кнопок.

  5. На первой странице мастера в списке Категории щелкните каждую категорию, чтобы посмотреть, какие действия можно запрограммировать для кнопки. В списке Действия выберите нужное действие, а затем нажмите кнопку Далее.

  6. Выберите параметр Текст или Рисунок в зависимости от того, что нужно отобразить на кнопке.

    • Если вы хотите отобразить текст, то можете изменить содержимое поля рядом с параметром Текст.

    • Если вам нужен рисунок, мастер предложит изображение в соответствующем списке. Если вы хотите выбрать другой рисунок, установите флажок Показать все рисунки, чтобы отобразить список всех доступных в Access изображений для кнопок, или нажмите кнопку Обзор, чтобы выбрать рисунок, сохраненный в отдельном файле.

      Нажмите кнопку Далее.

  7. Введите понятное имя для кнопки. Это необязательный шаг, и это имя не отображается на кнопке. Тем не менее рекомендуем указать понятное имя, чтобы было легко отличить эту кнопку от других позже (например, при настройке последовательности табуляции для элементов управления формы). Например, если кнопка закрывает форму, можно назвать ее cmdClose или CommandClose.

  8. Нажмите кнопку Готово.

    Кнопка будет размещена в форме.

  9. Если вы хотите просмотреть программный код, созданный мастером, можно сделать следующее:

    1. Если окно свойств не отображается, нажмите клавишу F4.

    2. В окне свойств откройте вкладку События.

    3. В диалоговом окне свойства по щелчку нажмите кнопку Построить

      .

      Откроется конструктор макросов, в котором будет показан макрос, созданный мастером. При желании макрос можно изменить (дополнительные сведения о редактировании макросов см. в разделе Макросы). Когда вы закончите, на вкладке Конструктор в группе Закрыть нажмите Закрыть, чтобы закрыть конструктор макросов. Если будет предложено сохранить изменения и обновить свойство, нажмите Да, чтобы сделать это, или Нет, чтобы отказаться.

  10. На вкладке Конструктор в группе Режимы нажмите кнопку Режим и выберите пункт Режим формы. Нажмите новую кнопку, чтобы проверить, правильно ли она работает.


К началу страницы


Макросы

Макрос — это инструмент, позволяющий автоматизировать задачи и добавлять функции в формы, отчеты и элементы управления. Например, если добавить в форму кнопку, то можно связать ее свойство события OnClick с макросом и включить в него команды, которые должны выполняться при нажатии этой кнопки.

Макросы Access можно рассматривать как упрощенный язык программирования, код на котором создается в виде списка необходимых действий. Создавая макрос, вы выбираете каждую макрокоманду из раскрывающегося списка, а затем вводите для нее необходимую информацию. С помощью макросов можно добавлять функции в формы, отчеты и элементы управления без необходимости писать код в модуле VBA. В макросах доступно подмножество команд VBA, и большинство людей считают, что создать макрос легче, чем написать код VBA.

Создать макрос можно с помощью конструктора макросов, который показан на этом рисунке:

Вот как можно открыть конструктор макросов:


К началу страницы


Код VBA

Как и макросы, код VBA можно использовать в Access для автоматизации и добавления функций. Вы можете расширить возможности VBA за счет элементов управления сторонних поставщиков, а также создать собственные функции и процедуры для конкретных целей.

Самый быстрый способ приступить к написанию программного кода VBA — создать макрос Access, а затем преобразовать его в код VBA. Инструкции см. в разделе Преобразование макросов в код VBA. В этом случае будет создан модуль VBA, который выполняет те же операции, которые определены в макросе. Кроме того, откроется редактор Visual Basic, так что вы сможете приступить к редактированию процедуры. При работе в редакторе Visual Basic можно щелкнуть интересующее вас ключевое слово и нажать клавишу F1, чтобы открыть справку разработчика Access и ознакомиться с соответствующей статьей. Затем вы можете продолжить изучение справки разработчика Access и узнать о новых командах, которые пригодятся для ваших задач.


К началу страницы


Преобразование макросов в код VBA

В Access можно автоматически преобразовать макросы в модули VBA или модули классов. Вы можете преобразовать макросы, прикрепленные к форме или отчету, независимо от того, внедрены они или являются отдельными объектами. Кроме того, можно преобразовать глобальные макросы, которые не прикреплены к конкретной форме или отчету.


Примечание: Веб-базы данных поддерживают код Visual Basic для приложений (VBA), но его невозможно запустить, когда такая база данных работает в браузере. Чтобы выполнить код VBA, который содержится в веб-базе данных, ее необходимо открыть в Access. Для задач, связанных с программированием, в веб-базах данных следует использовать макросы Access.

Преобразование макросов, прикрепленных к форме или отчету

Этот процесс преобразует в VBA все макросы, на которые ссылается форма, отчет или любой из их элементов управления (либо которые внедрены в форму, отчет или элемент управления), а затем добавляет код VBA в модуль класса формы или отчета. Модуль класса становится частью формы или отчета и сохраняется при их перемещении или копировании.

  1. В области навигации щелкните форму или отчет правой кнопкой мыши и выберите пункт Конструктор.

  2. На вкладке Конструктор в группе Сервис нажмите Преобразовать макросы формы или Преобразовать макросы отчета.

  3. В диалоговом окне Преобразование макросов формы или Преобразование макросов отчета укажите, нужно ли добавить к создаваемым функциям код обработки ошибок. Кроме того, если в макросах есть комментарии, укажите, нужно ли добавлять их в функции. Нажмите кнопку Преобразовать.

    Если для формы или отчета модуль класса не существует, Access создает один из них и добавляет процедуру в модуль для каждого макроса, связанного с формой или отчетом. Access также изменяет свойства события формы или отчета таким образом, чтобы они выполняли новые процедуры VBA вместо макросов.

  4. Чтобы просмотреть и изменить код VBA, сделайте следующее:

    1. Форма или отчет должны быть по-прежнему открыты в режиме конструктора. Если окно свойств не отображается, нажмите клавишу F4.

    2. На вкладке событие страницы свойств щелкните поле свойства, в котором отображается [процедура обработки событий], и нажмите кнопку Построить

      . Чтобы просмотреть свойства событий для определенного элемента управления, щелкните его, чтобы выбрать. Чтобы просмотреть свойства событий для всей формы или отчета, в верхней части окна свойств выберите в раскрывающемся списке пункт Форма или Отчет.

      Откроется редактор Visual Basic с процедурой обработки событий в соответствующем модуле класса. Чтобы просмотреть другие процедуры, которые хранятся в этом модуле класса, прокрутите содержимое вверх или вниз.

Преобразование глобальных макросов

  1. В области навигации щелкните правой кнопкой мыши макрос, который нужно преобразовать, и выберите пункт Конструктор.

  2. На вкладке Конструктор в группе Сервис щелкните Преобразовать макросы.

  3. В диалоговом окне Преобразование макроса установите нужные флажки и нажмите кнопку Преобразовать.

    Макрос будет преобразован, и откроется редактор Visual Basic.

  4. Чтобы просмотреть и изменить код VBA, сделайте следующее:

    1. В редакторе Visual Basic, если область Project Explorer (Окно проекта) не отображается, в меню View (Вид) выберите пункт Project Explorer.

    2. Разверните дерево под именем базы данных, в которой вы работаете.

    3. В разделе Модули дважды щелкните модуль Преобразованный макрос — <имя макроса>.

      Модуль откроется в редакторе Visual Basic.

Прикрепление функции VBA к свойству события

При преобразовании глобального макроса в VBA код VBA помещается в стандартный модуль. В отличие от модуля класса, стандартный модуль не является частью формы или отчета. Скорее всего, вам будет необходимо связать функцию со свойством события в форме, отчете или элементе управления, чтобы код выполнялся именно там, где и в нужном месте. Для этого можно скопировать код VBA в модуль класса, а затем связать его с свойством события, или можно создать специальный вызов из свойства события в стандартный модуль, выполнив описанные ниже действия.

  1. В редакторе Visual Basic посмотрите, как называется функция. Например, если преобразовать макрос с именем MyMacro, функции будет присвоено имя MyMacro().

  2. Закройте редактор Visual Basic.

  3. В области навигации щелкните правой кнопкой мыши форму или отчет, который нужно связать с функцией, и выберите в контекстном меню пункт Конструктор.

  4. Щелкните элемент управления или раздел, с которым вы хотите связать функцию.

  5. Если окно свойств не отображается, нажмите клавишу F4.

  6. В окне свойств на вкладке События щелкните поле свойства события, с которым нужно связать функцию.

  7. В поле свойства введите знак равенства (=), а затем — имя функции (например, =MyMacro(). Не забудьте ввести скобки.

  8. Сохраните форму или отчет, нажав на панели быстрого доступа кнопку Сохранить.

  9. В области навигации дважды щелкните форму или отчет и проверьте, правильно ли работает код.

Вы ознакомились с основными действиями для добавления кода VBA в базу данных. В этой статье содержатся только общие сведения о том, как приступить к работе, но существует множество справочников и ресурсов в Интернете, с помощью которых вы сможете усовершенствовать свои навыки программирования.


К началу страницы

Создание формы в Access — Access

В форме Access, как на витрине магазина, удобно просматривать и открывать нужные элементы. Так как форма — это объект, с помощью которого пользователи могут добавлять, редактировать и отображать данные, хранящиеся в базе данных классического приложения Access, ее внешний вид играет важную роль. Если база данных классического приложения Access используется несколькими пользователями, хорошо продуманные формы — залог точности данных и эффективности работы с ними.

Создать форму на компьютере в базе данных Access можно несколькими способами. В этой статье мы рассмотрим наиболее распространенные из них.


Примечание: Информация, приведенная в этой статье, не относится к веб-базам данных Access или веб-приложениям Access.

В этой статье



Создание формы из существующей таблицы или запроса в Access


Создание пустой формы в Access


Создание разделенной формы в Access


Создание формы, отображающей несколько записей, в Access


Создание формы, содержащей подчиненную форму, в Access


Создание формы навигации в Access


Дополнительные сведения

Создание формы из существующей таблицы или запроса в Access

Чтобы создать форму из таблицы или запроса базы данных, в области навигации щелкните таблицу или запрос, содержащие данные для формы, а затем на вкладке Создание нажмите кнопку Форма.

Приложение Access создаст форму и отобразит ее в режиме макета. При необходимости вы можете изменить оформление, например настроить размер текстовых полей в соответствии с данными. Подробнее читайте в статье об использовании инструмента «Форма».


Создание пустой формы в Access

  1. Чтобы создать форму без элементов управления и заранее отформатированных элементов, выполните следующее. На вкладке Создание нажмите кнопку Пустая форма. Приложение Access откроет пустую форму в режиме разметки страницы и отобразит область Список полей.

  2. В области Список полей щелкните знак плюс (+) рядом с одной или несколькими таблицами, содержащими поля, которые нужно включить в форму.

  3. Чтобы добавить поле к форме, дважды щелкните его или перетащите на форму. Чтобы добавить сразу несколько полей, щелкните их по очереди, удерживая нажатой клавишу CTRL. Затем перетащите выбранные поля на форму.


    Примечание: Порядок таблиц в области Список полей может изменяться в зависимости от выбранной части формы. Если не удается добавить поле в форму, выберите другую часть формы и повторите попытку.

  4. С помощью инструментов в группе Элементы управления на вкладке Работа с макетами форм можно добавить в форму эмблему компании, заголовок, номера страниц, дату и время.

  5. Если требуется добавить в форму другие виды элементов управления, откройте вкладку Конструктор и выберите нужные элементы в группе Элементы управления.

Создание разделенной формы в Access

Разделенная форма позволяет одновременно отображать данные в двух представлениях: в представлении формы и в режиме таблицы. То есть вы можете использовать возможности обоих этих представлений в одной форме. Например, можно быстро найти запись в режиме таблицы, а затем просмотреть или изменить ее в представлении формы. Эти две части формы связаны с одним и тем же источником данных и всегда синхронизированы друг с другом.

Чтобы создать новую разделенную форму с помощью инструмента «Разделенная форма», в области навигации щелкните таблицу или запрос с нужными данными, а затем на вкладке Создание нажмите кнопку Другие формы и выберите пункт Разделенная форма.

Access создаст форму, которую можно изменять по своему усмотрению. Например, при необходимости можно настроить размер текстовых полей в соответствии с данными. Подробнее о работе с разделенными формами читайте в статье о создании разделенной формы.


Создание формы, отображающей несколько записей, в Access

Форма нескольких элементов (также называется ленточной) удобна, если требуется отобразить несколько записей. Кроме того, ее легче настроить, чем таблицу. Такую форму можно создать с помощью инструмента «Несколько элементов».

  1. В области навигации щелкните таблицу или запрос с данными, которые должны отображаться в форме.

  2. На вкладке Создание нажмите кнопку Другие формы и выберите пункт Несколько элементов.

Приложение Access создаст форму и отобразит ее в режиме макета. В этом режиме вы можете вносить изменения в структуру формы и видеть, как изменяется представление данных. Например, можно настроить размер полей в соответствии с данными. Подробнее читайте в статье Создание формы с помощью инструмента «Несколько элементов».


Создание формы, содержащей подчиненную форму, в Access

При работе со связанными данными, хранящимися в отдельных таблицах, часто приходится просматривать их из нескольких таблиц или запросов в одной и той же форме, поэтому подчиненные формы отлично подойдут в такой ситуации. В зависимости от потребностей подчиненные формы можно добавлять несколькими способами. Подробнее об этом читайте в статье Создание формы, содержащей подчиненную форму (форма с отношением «один-ко-многим»).


Создание формы навигации в Access

Форма навигации — это простая форма, содержащая элемент навигации. Формы навигации являются полезным дополнением любой базы данных, но особенно важны для баз данных, публикуемых в Интернете, так как область навигации Access не отображается в браузере.

  1. Откройте базу данных, в которую нужно добавить форму навигации.

  2. На вкладке Создание в группе Формы нажмите кнопку Навигация и выберите нужный стиль формы навигации.

Access создаст форму, добавит на нее элемент навигации и отобразит форму в режиме макета. Подробнее об этом читайте в статье Создание формы навигации.


Дополнительные сведения

Формы можно настраивать с помощью нескольких параметров. Выберите нужные из представленных ниже.





Параметры

См. статью

Если вы хотите иметь возможность выбирать поля, которые будут отображаться в форме, создайте форму с помощью мастера форм.


Создание формы с помощью мастера форм

Добавление вкладок в форму позволяет упорядочить данные и сделать форму более удобной для восприятия, особенно, если форма содержит большое количество элементов управления.


Создание формы с вкладками

Элемент управления «Веб-браузер» дает возможность отображать в форме веб-страницы. Вы можете связывать его с полями и элементами управления базы данных, чтобы динамически определять отображаемую страницу. Например, с помощью адресов в базе данных можно создавать настраиваемые карты на сайте, или использовать сведения о товаре в базе данных для поиска объектов на веб-сайте поставщика.


Добавление в форму элемента управления «Веб-браузер»

Элементы управления в Access размещаются вдоль направляющих линий (макетов), которые позволяют выравнивать элементы управления в форме. Узнайте, как перемещать и изменять размер отдельных элементов управления.


Перемещение и изменение размера отдельных элементов управления


К началу страницы

Задание формы, которая выводится по умолчанию при открытии базы данных Access

При работе со многими базами данных Access удобно сделать так, чтобы каждый раз при запуске приложения автоматически открывалась одна и та же форма. Чтобы задать начальную форму, используемую по умолчанию, нужно указать ее в параметрах Access.

Также можно создать макрос AutoExec для выполнения действий при запуске базы данных. Дополнительные сведения см. в статье Создание макроса, который запускается при открытии базы данных.

Задание формы по умолчанию в параметрах Access

Предполагается, что база данных открыта и форма, которая должна отображаться, уже создана.

  1. Откройте вкладку Файл и в разделе Справка выберите Параметры.

  2. Выберите пункт Текущая база данных.

  3. В группе Параметры приложений в списке Форма просмотра выберите форму, которая должна отображаться при запуске базы данных.

  4. Нажмите кнопку ОК. Чтобы отобразилась начальная форма, необходимо закрыть базу данных и затем открыть ее повторно.

Примечания

  • Чтобы не использовать этот параметр и другие параметры запуска, удерживайте нажатой клавишу SHIFT во время загрузки базы данных. Дополнительные сведения см. в статье Обход параметров запуска при открытии базы данных.

  • Подключив макросы или код VBA к событию OnOpen или OnLoad начальной формы, вы можете указать дополнительные действия, которые должны выполняться при каждом запуске базы данных. Дополнительные сведения о создании макросов см. в статье Создание макроса пользовательского интерфейса.

Программирование форм и отчетов (объектов) Access 2003

Программирование VBA событий объектов в формах и отчетах


Автор: Владимир Ткаченко

Источник: Обучение в интернет

Рассмотрим программирование форм и отчетов БД Access 2003 с помощью VBA. Формы и отчеты — это основные документы (объекты) БД Access для интерактивного взаимодействия с БД. Объекты характеризуются свойствами, методами и событиями. Все формы и отчеты, которые хранятся в БД Access 2003, относятся к коллекциям: AllForms и AllReports. Доступ к коллекциям программных модулей AllForms и AllReports предоставляют объекты CurrentProject и CodeProject.


Кроме коллекций AllForms и AllReports в БД Access входят коллекции Forms и Reports. В коллекции Forms и Reports объединяются все формы и отчеты, которые в данный момент открыты (загружены в оперативную память). Эти коллекции входят в объект Application приложения Access. Объект Application находится на вершине иерархии объектной модели Access.

Для обращения к объекту (например, к форме «Студенты» БД Access 2003) надо в соответствии с иерархией объектов Access записать путь к требуемому объекту, состоящий из последовательности имен объектов и коллекций, отделяя их друг от друга точкой. Ссылка на форму «Студенты» БД Access 2003, которая входит в состав коллекции AllForms, имеет следующий вид:
Application.CurrentProject.AllForms («Студенты»).

В этой ссылке объект Application можно опустить, так как объект CurrentProject является глобальным объектом. Известно, что при обращении к глобальному объекту объекты более высокого уровня можно опустить. В результате ссылка на объект примет следующий вид: CurrentProject.AllForms («Студенты»).

Для работы с объектами Access необходимо использовать объектные переменные. Объектная переменная — это переменная, которая ссылается на объект. Вначале надо объявить имя переменной для этого объекта, а затем, используя оператор Set, связать переменную с объектом. Для работы с формой или отчетом можно воспользоваться одним из универсальных объектов AccessObject или Object. Например, информацию обо всех формах в БД Access 2003 можно получить, выполнив процедуру MySt (). Скриншот программного кода данной процедуры представлен на рисунке 1.

Рис. 1.

В процедуре MySt () связь объектной переменной с экземпляром объекта разорвана, так как объектной переменной установлено значение Nothing. Для данной процедуры связывать переменную с объектом необязательно, но переменную можно связать с объектом Form, например,
Set frm = CurrentProject.AllForms (Form).

Необходимо отметить, что формы и отчеты БД Access кардинально отличаются от форм и отчетов Word и Excel, которые создаются и открываются программно. Формы и отчеты в Access создаются из окна БД средствами (мастерами и конструкторами) визуального проектирования форм и отчетов. Формы создаются из набора отдельных элементов управления, они легко помещаются на форму в режиме конструктора.

При необходимости формы, отчеты и элементы управления для форм в БД Access можно создавать и программным способом. Для этого надо воспользоваться методом CreateControl объекта Application. Но чаще всего программы на языке Visual Basic (модули) создают для автоматизации действий над объектами (кнопками, текстовыми полями, переключателями и т.д.) в формах и отчетах.


Для программирования форм и отчетов Access используется визуальная среда, которая основана на событиях объектов. Процедуры обработки событий обычно хранятся в модулях форм. Кроме того, программирование может применяться для изменения свойств форм и отчетов, если они активны, т.е. открыты.

Формы и отчеты БД Access обычно открываются вручную из окна базы данных в режиме макета или конструктора. Но если требуется открыть форму программным способом, то целесообразно использовать метод OpenForm объекта DoCmd. Объект DoCmd предназначен для запуска макроса из процедуры на языке Visual Basic.

DoCmd — это объект, который не имеет свойств, но имеет множество методов (OpenForm, OpenTable, Close, Save, OpenReport и т.д.), которые выполняют различные действия (макродействия) над объектами. На рисунке 2 представлен скриншот окна просмотра Object Browser, в котором отображается объект DoCmd и его методы.

Рис. 2.

Объект DoCmd позволяет выполнять макросы (макрокоманды или макродействия) с помощью процедуры на VB. Инструкция DoCmd имеет следующий формат: DoCmd макрокоманда аргументы. Если, например, необходимо открыть форму «Студенты» в табличном представлении, то можно использовать метод OpenForm объекта DoCmd со значением аргумента acFormDS (рисунок 3).

Рис. 3.

В результате выполнения данной процедуры в окне БД Access откроется форма «Студенты» в табличном представлении. Для того чтобы программно открыть отчет «Автоотчет_лент_студ» в режиме предварительного просмотра, можно использовать метод OpenReport объекта DoCmd со значением аргумента acViewPreview (рисунок 4).

Рис. 4.

В результате выполнения данной процедуры в окне БД Access откроется отчет «Автоотчет_лент_студ» в режиме предварительного просмотра.

Как открыть форму Access из Excel

Автор Дмитрий Якушев На чтение 2 мин. Просмотров 434

Что делает макрос: В некоторых случаях, вам или вашим клиентам, возможно, потребуется переключить фокус на форму доступа. Этот пример демонстрирует, как вы можете открыть форму Access из Excel.

Как макрос работает

С помощью этого макроса, вы указываете Excel базу данных Access и вызываете определенную форму доступа, чтобы открыть.
Для автоматизации доступа, необходимо установить ссылку на библиотеку объектов Microsoft Access. Для этого откройте VBA в Excel и выберите Tools➜References. Откроется диалоговое окно «References». Прокрутите вниз, пока вы найдите запись Microsoft Access XX Object Library, где XX — это ваша версия Access. Выберите флажок рядом с записью.

Код макроса

Sub OtkritFormuAccess()
'Шаг 1: Объявляем переменные
Dim AC As Access.Application

'Шаг 2: Запустите Access и откройте целевую базу данных
Set AC = New Access.Application
AC.OpenCurrentDatabase _
("C:\Temp\YourAccessDatabase.accdb")

'Шаг 3: Откройте целевую форму и сделайте доступ видимым
With AC
.DoCmd.OpenForm "MainForm", acNormal
.Visible = True
End With
End Sub

Как этот код работает

  1. объявляем переменную объекта AC. Эта переменная открывает библиотеку приложений баз данных Access.
  2. используем переменную AC, чтобы открыть базу данных Microsoft Access, где находятся целевые формы.
  3. открываем соответствующую форму. Форма Access открывается в новом окне Microsoft Access. Обратите внимание, что вы не закрывали базу данных в последней строке шага 3.

Как использовать

Для реализации этого макроса, вы можете скопировать и вставить его в стандартный модуль:

  1. Активируйте редактор Visual Basic, нажав ALT + F11.
  2. Щелкните правой кнопкой мыши имя проекта / рабочей книги в окне проекта.
  3. Выберите Insert➜Module.
  4. Введите или вставьте код.

Доступ

мс — открыть форму для новой записи в VBA

Переполнение стека

  1. Около
  2. Продукты

  3. Для команд
  1. Переполнение стека
    Общественные вопросы и ответы

  2. Переполнение стека для команд
    Где разработчики и технологи делятся частными знаниями с коллегами

  3. Вакансии
    Программирование и связанные с ним технические возможности карьерного роста

  4. Талант
    Нанимайте технических специалистов и создавайте свой бренд работодателя

  5. Реклама
    Обратитесь к разработчикам и технологам со всего мира

  6. О компании

Загрузка…

.

Método DoCmd.OpenForm (Доступ) | Документы Microsoft

  • Tiempo de lectura: 2 минуты

En este artículo

Метод OpenForm с поддержкой OpenForm на Visual Basic. Метод OpenForm выполняет действие OpenForm в Visual Basic.

SintaxisSyntax

expresión . OpenForm ( FormName , View , FilterName , WhereCondition , DataMode , WindowMode , OpenArgs ) выражение . OpenForm ( FormName , View , FilterName , WhereCondition , DataMode , WindowMode , OpenArgs )

expresión Переменная, которая представляет объект DoCmd . выражение Переменная, представляющая объект DoCmd .

Параметры Параметры

NombreName Obligatorio / opcional Требуется / Дополнительно Тип данных Тип данных Описание Описание
Имя формы Имя формы Necesario Требуется Вариант Вариант Expresión de cadena que es el nombre válido de un formulario de la base de datos actual.Строковое выражение, которое является допустимым именем формы в текущей базе данных. Если вы используете код Visual Basic, который содержит метод OpenForm на базе данных библиотеки, Access busca el formulario con este nombre primero en la base de datos de biblioteca y luego en la base de datos actual. код, содержащий метод OpenForm в базе данных библиотеки, Access ищет форму с этим именем сначала в базе данных библиотеки, а затем в текущей базе данных.
Vista Просмотр Дополнительно Дополнительно AcFormView AcFormView Constante AcFormView , которая определена для просмотра в форме, указанной в формуляре. Константа AcFormView , которая указывает представление, в котором будет открываться форма. Значение по умолчанию — acNormal . Значение по умолчанию — acNormal .
NombreDeFiltro Имя фильтра Дополнительно Дополнительно Вариант Вариант Expresión de cadena que es el nombre válido de una consulta de la base de datos activa.Строковое выражение, которое является допустимым именем запроса в текущей базе данных.
Condición Где Где Условие Дополнительно Дополнительно Вариант Вариант Expresión de cadena que es una cláusula WHERE de SQL válida sin la palabra WHERE. Строковое выражение, которое является допустимым предложением SQL WHERE без слова WHERE.
ModoDeDatos DataMode Дополнительно Дополнительно AcFormOpenDataMode AcFormOpenDataMode Constante AcFormOpenDataMode , который специально предназначен для ввода данных в формуляры.Константа AcFormOpenDataMode , указывающая режим ввода данных для формы. Esto se aplica únicamente a los formularios que se abren en la vista Formulario u Hoja de datos. Это применимо только к формам, открытым в режиме формы или в режиме таблицы. Значение по умолчанию: acFormPropertySettings . Значение по умолчанию — acFormPropertySettings .
ModoDeVentana WindowMode Дополнительно Дополнительно AcWindowMode AcWindowMode Constante AcWindowMode для особого режима вентана и для того, чтобы получить формуляр.Константа AcWindowMode , указывающая режим окна, в котором открывается форма. Значение по умолчанию — acWindowNormal . Значение по умолчанию — acWindowNormal .
OpenArgs OpenArgs Дополнительно Дополнительно Вариант Вариант Expresión de cadena. Строковое выражение. Esta expresión se usa para establecer la propiedad OpenArgs del formulario.Это выражение используется для установки свойства OpenArgs формы. Después, este valor se puede usar en el código de un módulo de formulario, por ejemplo, el schemeimiento de evento Открыто

.

Свойство Form.Form (Доступ) | Документы Microsoft

  • 2 минуты на чтение

В этой статье

Свойство Form можно использовать для ссылки на форму или для ссылки на форму, связанную с подчиненным элементом управления. Только для чтения Форма .

Синтаксис

выражение . Форма

выражение Переменная, представляющая объект Form .

Замечания

Это свойство относится к объекту формы. Он доступен только для чтения во всех представлениях.

Это свойство обычно используется для ссылки на форму или отчет, содержащийся в элементе управления подчиненной формы. Например, следующий код использует свойство Form для доступа к элементу управления OrderID в подчиненной форме, содержащейся в элементе управления подчиненной формы OrderDetails .

  Dim intOrderID как целое число
intOrderID = Forms! Orders! OrderDetails.Form! OrderID
  

В следующем примере вызывается функция из окна свойств с использованием свойства Form для ссылки на активную форму, которая содержит элемент управления с именем CustomerID .

  = MyFunction (Форма! CustomerID)
  

Когда вы используете свойство Form таким образом, вы ссылаетесь на активную форму, и имя формы не обязательно.

Следующий пример является эквивалентом предыдущего примера в Visual Basic.

  X = MyFunction (Формы! Клиенты! Идентификатор клиента)
  

Примечание

При использовании коллекции Forms необходимо указать имя формы.

Пример

В следующем примере свойство Form используется для ссылки на элемент управления в подчиненной форме.

  Dim curTotalAmount As Currency
 
curTotalAmount = Формы! Заказы! OrderDetails.Форма! TotalAmount

  

Поддержка и отзывы

Есть вопросы или отзывы об Office VBA или этой документации? См. Раздел Поддержка и отзывы Office VBA, чтобы узнать, как получить поддержку и оставить отзыв.

.

DoCmd.OpenTable метод (Access) | Документы Microsoft

  • 2 минуты на чтение

В этой статье

Метод OpenTable выполняет действие OpenTable в Visual Basic.

Синтаксис

выражение . OpenTable ( Имя таблицы , Просмотр , DataMode )

выражение Переменная, представляющая объект DoCmd .

Параметры

Имя Обязательно / Дополнительно Тип данных Описание
Имя таблицы Требуется Вариант Строковое выражение, которое является допустимым именем таблицы в текущей базе данных. Если вы выполняете код Visual Basic, содержащий метод OpenTable в базе данных библиотеки, Microsoft Access сначала ищет таблицу с этим именем в базе данных библиотеки, а затем в текущей базе данных.
Посмотреть Дополнительно AcView Константа AcView , определяющая представление, в котором будет открываться таблица. Значение по умолчанию — acViewNormal .
Режим данных Дополнительно AcOpenDataMode Константа AcOpenDataMode , определяющая режим ввода данных для таблицы. Значение по умолчанию — acEdit .

Примечания

Вы можете использовать метод OpenTable , чтобы открыть таблицу в режиме таблицы, конструктора или предварительного просмотра. Вы также можете выбрать режим ввода данных для таблицы.

Пример

В следующем примере открывается таблица сотрудников в режиме предварительного просмотра.

  DoCmd.OpenTable «Сотрудники», acViewPreview
  

Поддержка и отзывы

Есть вопросы или отзывы об Office VBA или этой документации? См. Раздел Поддержка и отзывы Office VBA, чтобы узнать, как получить поддержку и оставить отзыв.

.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *