OpenArgs 屬性

適用對象

Form 物件

Report 物件

決定開啟表單之 OpenForm 方法的 OpenArgs 引數所指定的字串運算式。讀/寫變數

expression.OpenArgs

必須要有 expression。傳回「適用對象」清單中其中一個物件的運算式。

備註

只有在使用巨集或使用 Visual Basic for Applications (VBA) 程式碼搭配 DoCmd 物件的 OpenForm 方法時,才可以使用此屬性。此屬性設定在所有檢視中都是唯讀的。

若要使用 OpenArgs 屬性,請使用 DoCmd 物件的 OpenForm 方法開啟表單,然後將 OpenArgs 引數設定為所需的字串運算式。OpenArgs 屬性設定之後就可以用於表單的程式碼,例如,用於開啟事件程序時。您也可以參照巨集 (例如 Open 巨集) 中的屬性設定或運算式 (例如,設定表單上控制項之 ControlSource 屬性的運算式)。

例如,假設您開啟的表單是用戶端的連續表單清單。如果您希望焦點在表單開啟時移至特定的用戶端記錄,可以將 OpenArgs 屬性設為用戶端的名稱,然後使用 Open 巨集中的 FindRecord 動作,將焦點移至具有指定名稱之用戶端的記錄。

範例

下列範例使用 OpenArgs 屬性,將員工表單開啟到特定的員工記錄,然後示範 OpenForm 方法如何設定 OpenArgs 屬性。您可以視需要執行此程序,例如,當用於輸入員工新資訊的自訂對話方塊發生 AfterUpdate 事件時。

Sub OpenToCallahan()
DoCmd.OpenForm "Employees", acNormal, , , _
acReadOnly, , "Callahan"
End Sub
Sub 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 If
End 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 If
End Sub
擴展您的技能
探索訓練
優先取得新功能
加入 Office 測試人員

這項資訊有幫助嗎?

感謝您的意見反應!

感謝您的意見反應! 我們將協助您與其中一位 Office 支援專員連絡以深入了解您的意見。

×