Gäller för

Form-objekt

Report-objekt

Avgör stränguttrycket som anges med argumentet öppningsargument i metoden OpenForm som öppnar ett formulär. Variant för läsning/skrivning.

uttryck.OpenArgs

Uttryck Obligatoriskt. Ett uttryck som returnerar ett av objekten i listan Gäller för.

Kommentarer

Den här egenskapen är bara tillgänglig via ett makro eller med VBA-kod (Visual Basic for Applications) och metoden OpenForm för DoCmd-objektet. Inställningen för den här egenskapen är skrivskyddad i alla vyer.

Om du vill använda egenskapen OpenArgs öppnar du ett formulär med metoden OpenForm för DoCmd-objektet och anger önskat stränguttryck för argumentet öppningsargument. Inställningen för egenskapen OpenArgs kan sedan användas i kod för formuläret, som i händelseproceduren Open. Du kan också referera till egenskapsinställningen i ett makro, som ett Open-makro, eller i ett uttryck, till exempel ett uttryck som anger egenskapen ControlSource egenskapen för en kontroll i formuläret.

Anta till exempel att formuläret du öppnar är lista med klienter av typen kontinuerligt formulär. Om du vill att fokus fokus ska flyttas till en viss klientpost när formuläret öppnas kan du sätta egenskapen OpenArgs till klientens namn och sedan använda åtgärden FindRecord i ett Open-makro till att flytta fokus till posten för klienten med det angivna namnet.

Exempel

I följande exempel visas hur egenskapen OpenArgs används till att öppna formuläret Employees vid en viss post, och hur metoden OpenForm används till att ange egenskapen OpenArgs. Du kan köra den här proceduren efter behov, till exempel när händelsen AfterUpdate inträffar för en anpassad dialogruta som används till att ange ny information om en medarbetare.

Sub OpenToCallahan()    DoCmd.OpenForm "Employees", acNormal, , , _        acReadOnly, , "Callahan"End SubSub 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 IfEnd Sub

I nästa exempel används metoden FindFirst till att leta upp medarbetaren med namnet som anges i egenskapen 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 IfEnd Sub

Behöver du mer hjälp?

Vill du ha fler alternativ?

Utforska prenumerationsförmåner, bläddra bland utbildningskurser, lär dig hur du skyddar din enhet med mera.

Communities hjälper dig att ställa och svara på frågor, ge feedback och få råd från experter med rika kunskaper.