OpenArgs-Eigenschaft (Öffnungsargumente)

Gilt für:

Form-Objekt

Report-Objekt

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

Ausdruck.OpenArgs

Ausdruck erforderlich. Ein Ausdruck, der eines der Objekte in der Liste "Gilt für" zurückgibt.

Hinweise

Diese Eigenschaft steht nur bei Verwendung eines Makros oder von VBA-Code (Visual Basic for Applications) mit der OpenForm-Methode des DoCmd-Objekts zur Verfügung. Die Einstellung dieser Eigenschaft ist in allen Ansichten schreibgeschützt.

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

Nehmen Sie zum Beispiel an, dass das von Ihnen geöffnete Formular eine Endlosformularliste mit Kunden ist. Wenn Sie möchten, dass der Fokus zu einem bestimmten Kundendatensatz wechselt, sobald das Formular geöffnet wird, können Sie die OpenArgs-Eigenschaft auf den Namen des Kunden festlegen. Dann können Sie die Aktion FindRecord in einem Makro des Typs "Open" verwenden, um den Fokus auf den Datensatz des Kunden mit dem angegebenen Namen zu verlagern.

Beispiel

Das folgende Beispiel verwendet die OpenArgs-Eigenschaft, um das Mitarbeiterformular für einen bestimmten Mitarbeiterdatensatz zu öffnen und zeigt, wie die OpenForm-Methode die OpenArgs-Eigenschaft festlegt. Sie können diese Prozedur nach Bedarf ausführen, z.B. wenn das AfterUpdate-Ereignis für ein benutzerdefiniertes Dialogfeld zur Eingabe neuer Informationen zu einem Mitarbeiter eintritt.

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

Im nächsten Beispiel wird die FindFirst-Methode verwendet, um den in der OpenArgs-Eigenschaft genannten Mitarbeiter zu bestimmen.

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
Ihre Fähigkeiten erweitern
Schulung erkunden
Neue Funktionen als Erster erhalten
An Office Insider teilnehmen

War diese Information hilfreich?

Vielen Dank für Ihr Feedback!

Vielen Dank für Ihr Feedback. Es klingt, als ob es hilfreich sein könnte, Sie mit einem unserer Office-Supportmitarbeiter zu verbinden.

×