Se aplică la
Obiectul Form |
Obiectul Report |
Determină o expresie șir specificată de argumentul OpenArgs al metodei OpenForm care a deschis un formular. Variant în citire/scriere.
expresie.OpenArgs
expresie Obligatoriu. O expresie care returnează unul dintre obiectele din lista Se aplică la.
Observații
Această proprietate este disponibilă doar utilizând o macrocomandă sau utilizând cod Visual Basic for Applications (VBA) cu metoda OpenForm a obiectului DoCmd. Această setare de proprietate este doar în citire în toate vizualizările.
Pentru a utiliza proprietatea OpenArgs, deschideți un formular utilizând metoda OpenForm a obiectului DoCmd și setați argumentul OpenArgs la expresia șir de caractere dorită. Setarea de proprietate OpenArgs poate fi utilizată apoi în codul pentru formular, cum ar fi într-o procedură eveniment Deschidere. De asemenea, puteți face referire la setarea proprietății într-o macrocomandă, cum ar fi o macrocomandă Deschidere sau într-o expresie, cum ar fi una care setează proprietatea ControlSource pentru un control din formular.
De exemplu, să presupunem că formularul pe care îl deschideți este o listă de clienți cu formulare continue. Dacă doriți ca focalizare să treacă la o anumită înregistrare client atunci când se deschide formularul, puteți să setați proprietatea OpenArgs la numele clientului, apoi să utilizați acțiunea CăutareÎnreg într-o macrocomandă Deschidere pentru a muta focalizarea la înregistrarea pentru client cu numele specificat.
Exemplu
Următorul exemplu utilizează proprietatea OpenArgs pentru a deschide formularul Employees (Angajați) la o anumită înregistrare de angajat și demonstrează cum setează metoda OpenForm proprietatea OpenArgs. Puteți rula această procedură după caz, de exemplu, atunci când evenimentul AfterUpdate are loc pentru o casetă de dialog particularizată utilizată pentru a introduce informații noi despre un angajat.
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
Următorul exemplu utilizează metoda FindFirst pentru a găsi angajatul numit în proprietatea 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