Form.OpenArgs 屬性 (Access)

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

語法

運算式。OpenArgs

expression 代表 Form 物件的變數。

註解

只有藉由使用巨集,或是使用 Visual Basic 搭配 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

下列範例會顯示如何使用 OpenArgs 屬性來防止從瀏覽窗格開啟表單。

Private Sub Form_Open(Cancel As Integer)

If Me.OpenArgs() <> "Valid User" Then
    MsgBox "You are not authorized to use this form!", _
        vbExclamation + vbOKOnly, "Invalid Access"
    Cancel = True
End If
End Sub

支援和意見反應

有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。