Freigeben über


Form.OpenArgs-Eigenschaft (Access)

Bestimmt den Zeichenfolgenausdruck, der durch das OpenArgs-Argument der OpenForm-Methode angegeben wird, die ein Formular geöffnet hat. Variant mit Lese-/Schreibzugriff.

Syntax

Ausdruck. OpenArgs

expression Eine Variable, die ein Form-Objekt darstellt.

HinwBemerkungeneise

Diese Eigenschaft ist nur mithilfe eines Makros oder mithilfe von Visual Basic mit der OpenForm-Methode des DoCmd-Objekts verfügbar. Die Eigenschaft ist in allen Ansichten schreibgeschützt.

Um die OpenArgs-Eigenschaft zu verwenden, öffnen Sie ein Formular mithilfe der OpenForm-Methode des DoCmd-Objekts, und legen Sie das Argument OpenArgs auf den gewünschten Zeichenfolgenausdruck fest. Die Einstellung der OpenArgs-Eigenschaft kann dann im Code für das Formular verwendet werden, z. B. in einer Open-Ereignisprozedur . Sie können auch auf die Eigenschaftseinstellung in einem Makro verweisen, z. B. in einem Öffnen-Makro , oder auf einen Ausdruck, z. B. auf einen Ausdruck, der die ControlSource-Eigenschaft für ein Steuerelement im Formular festlegt.

Angenommen, das Formular, das Sie öffnen, ist eine Liste von Clients in einem Endlosformular. Soll der Fokus auf einen ganz bestimmten Kundendatensatz verschoben werden, sobald das Formular geöffnet wurde, können Sie wie folgt vorgehen: Legen Sie die OpenArgs-Eigenschaft auf den Namen des Kunden fest, und verwenden Sie dann in einem "Öffnen"-Makro die FindRecord-Aktion, um den Fokus auf den Datensatz des Kunden zu verschieben, dessen Namen Sie angegeben haben.

Beispiel

Im folgenden Beispiel wird die OpenArgs-Eigenschaft verwendet, um das Employees-Formular für einen bestimmten Mitarbeiterdatensatz zu öffnen, und zeigt, wie die OpenForm-Methode die OpenArgs-Eigenschaft festlegt. Sie können dieses Verfahren nach Bedarf ausführen. Beispielsweise, wenn das AfterUpdate-Ereignis für ein benutzerdefiniertes Dialogfeld auftritt, das zum Eingeben neuer Informationen zu einem Mitarbeiter verwendet wird.

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

Das folgende Beispiel zeigt, wie Sie die Eigenschaft OpenArgs verwenden, um zu verhindern, dass ein Formular im Navigationsbereich geöffnet werden kann.

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

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.