Odnosi se na
Objekt Form |
Objekt Report |
Određuje nizovni izraz definiran argumentom OpenArgs metode OpenForm koja je otvorila obrazac. To je svojstvo vrste Variant za čitanje/pisanje.
izraz.OpenArgs
expression Obavezno. Izraz koji vraća jedan od objekata na popisu Primjenjuje se na.
Napomene
To je svojstvo dostupno samo pomoću makronaredba ili koda programa Visual Basic for Applications (VBA) uz metodu OpenForm objekta DoCmd. Ta je postavka svojstva samo za čitanje u svim prikazima.
Da biste koristili svojstvo OpenArgs , otvorite obrazac pomoću metode OpenForm objekta DoCmd i postavite argument OpenArgs na željeni nizovni izraz. Postavka svojstva OpenArgs tada se može koristiti u kodu za obrazac, npr. u otvorenom procedura događaja. Možete se referirati i na postavku svojstva u makronaredbi, kao što je makronaredba Otvori ili izraz, kao što je izraz koji postavlja svojstvo ControlSource za kontrola na obrascu.
Pretpostavimo da je obrazac koji otvarate, primjerice, kontinuirani popis klijenata. Ako želite da fokus prijeđe na zapis određenog klijenta kada se obrazac otvori, postavite svojstvo OpenArgs na ime tog klijenta, a zatim pomoću akcije FindRecord u makronaredbi Open premjestite fokus na zapis za klijenta s navedenim imenom.
Primjer
U sljedećem se primjeru svojstvo OpenArgs koristi za otvaranje obrasca Zaposlenici u određeni zapis zaposlenika i pokazuje kako metoda OpenForm postavlja svojstvo OpenArgs . Taj postupak možete pokrenuti prema potrebi – primjerice, kada se dogodi događaj AfterUpdate za prilagođeni dijaloški okvir koji se koristi za unos novih informacija o zaposleniku.
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
U sljedećem se primjeru pomoću metode FindFirst pronalazi zaposlenik čije je ime navedeno u svojstvu 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 If End Sub