Applies ToAccess за Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Отнася се за

Обект Form

Обект Report

Определя низов израз, зададен от аргумента OpenArgs на метода OpenForm , който е отворил формуляр. Variant за четене/запис.

израз.OpenArgs

израз Задължително. Израз, който връща един от обектите в списъка "Отнася се за".

Забележки

Това свойство е налично само когато използвате макрос или код на Visual Basic for Applications (VBA) с метода OpenForm на обекта DoCmd. Тази настройка на свойството е само за четене във всички изгледи.

За да използвате свойството OpenArgs, отворете формуляр с помощта на метода OpenForm на обекта DoCmd и задайте аргумента OpenArgs на желания низов израз. След това настройката на свойството OpenArgs може да се използва в кода за формуляра, например в процедура за събитие Open. Можете също да прегледате настройката на свойство в макрос, например в макроса Open, или в израз, например в израз, който задава свойството ControlSource за контрола във формуляра.

Да предположим например, че формулярът, който отваряте, е списък с клиенти с непрекъснат формуляр. Ако искате фокус да се премести в конкретен запис на клиент, когато формулярът се отвори, можете да зададете свойството OpenArgs на името на клиента и след това да използвате действието FindRecord в макрос Open, за да преместите фокуса върху записа за клиента със зададеното име.

Пример

Следващият пример използва свойството OpenArgs за отваряне на формуляра "Служители" на записа за конкретен служител и показва как методът OpenForm задава свойството OpenArgs. Можете да изпълнявате тази процедура, когато е необходимо, например, когато събитието AfterUpdate се появява за диалогов прозорец по избор, използван за въвеждане на нова информация за служител.

Sub OpenToCallahan()    DoCmd.OpenForm "Employees", acNormal, , , _        acReadOnly, , "Callahan"End SubSub Form_Open(Cancel As Integer)    Dim strEmployeeName As String    ' If OpenArgs property contains employee name, find    ' corresponding employee record and display it on     ' form. For example,if the OpenArgs property     ' contains "Callahan", move to first "Callahan"     ' record.    strEmployeeName = Forms!Employees.OpenArgs    If Len(strEmployeeName) > 0 Then        DoCmd.GoToControl "LastName"        DoCmd.FindRecord strEmployeeName, , True, , _           True, , True    End IfEnd Sub

Следващият пример използва метода FindFirst за намиране на служителя, чието име е указано в свойството OpenArgs.

Private Sub Form_Open(Cancel As Integer)    If Not IsNull(Me.OpenArgs) Then        Dim strEmployeeName As String        strEmployeeName = Me.OpenArgs        Dim RS As DAO.Recordset        Set RS = Me.RecordsetClone        RS.FindFirst "LastName = '" & _            strEmployeeName & "'"        If Not RS.NoMatch Then            Me.Bookmark = RS.Bookmark        End If    End IfEnd Sub

Нуждаете ли се от още помощ?

Искате ли още опции?

Разгледайте ползите от абонамента, прегледайте курсовете за обучение, научете как да защитите устройството си и още.

Общностите ви помагат да задавате и отговаряте на въпроси, да давате обратна връзка и да получавате информация от експерти с богати знания.