Egenskapen OpenArg

Gjelder for

Skjemaobjekt

Rapportobjekt

Bestemmer strenguttrykk angitt av OpenArgs-argumentet for OpenForm-metoden som åpnet et skjema. Lese/skrive Variant.

uttrykk.OpenArgs

uttrykk Påkrevd. Et uttrykk som returnerer ett av objektene i Gjelder for-listen.

Merknader

Denne egenskapen er tilgjengelig bare ved bruk av en makro eller ved hjelp av Visual Basic for Applications, VBA-kode med OpenForm-metoden for DoCmd-objektet. Denne egenskapsinnstillingen er skrivebeskyttet i alle visninger.

Hvis du vil bruke OpenArgs-egenskapen, åpner du et skjema ved hjelp av OpenForm-metoden for DoCmd-objektet, og angir OpenArgs-argumentet til ønsket strenguttrykk. Egenskapsinnstillingen for OpenArgs kan deretter brukes i kode for skjemaet, som i en åpen hendelsesprosedyre. Du kan også referere til egenskapsinnstillingen i en makro, som en Open-makro eller et uttrykk, for eksempel et uttrykk som angir ControlSource-egenskapen for en kontroll i skjemaet.

Anta for eksempel at skjemaet du åpner, er en kontinuerlig skjemaliste over kunder. Hvis du vil at fokus skal flytte til en bestemt kundepost når skjemaet åpnes, kan du angi OpenArgs-egenskapen til kundens navn, og deretter bruke FinnPost-handlingen i en Open-makro for å flytte fokuset til posten for kunden med det spesifiserte navnet.

Eksempel

Følgende eksempel bruker OpenArgs-egenskapen for å åpne ansattskjemaet for en bestemt ansattpost og viser hvordan OpenForm-metoden angir OpenArgs-egenskapen. Du kan kjøre denne prosedyren etter behov, for eksempel når AfterUpdate-hendelsen opptrer for en egendefinert dialogboks som brukes for å angi ny informasjon om en ansatt.

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

Det neste eksemplet bruker FindFirst-metoden for å finne den ansatte navngitt i OpenArgs-egenskapen.

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
Utvid ferdighetene dine
Utforsk opplæring
Vær først ute med de nye funksjonene
Bli med i Office Insiders

Var denne informasjonen nyttig?

Takk for tilbakemeldingen!

Takk for tilbakemeldingen! Det høres ut som det kan være lurt å sette deg i kontakt med én av våre Office-kundestøtteagenter.

×