Properti OpenArgs

Berlaku Untuk
Access untuk Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Berlaku untuk

Objek Formulir
Objek Report

Menentukan ekspresi string yang ditentukan oleh argumen OpenArgs dari metode OpenForm yang membuka formulir. Baca/tulis Variant.

ekspresi.OpenArgs

Ekspresi Diperlukan. Ekspresi yang mengembalikan salah satu objek dalam daftar Berlaku Untuk.

Keterangan

Properti ini hanya tersedia dengan menggunakan makro atau menggunakan kode Visual Basic for Applications (VBA) dengan metode OpenForm objek DoCmd . Pengaturan properti ini hanya bersifat baca saja dalam semua tampilan.

Untuk menggunakan properti OpenArgs , buka formulir menggunakan metode OpenForm objek DoCmd dan atur argumen OpenArgs ke ekspresi string yang diinginkan. Pengaturan properti OpenArgs kemudian dapat digunakan dalam kode untuk formulir, seperti dalam prosedur Acara terbuka. Anda juga bisa merujuk ke pengaturan properti dalam makro, seperti makro Buka, atau ekspresi, seperti ekspresi yang mengatur properti ControlSource untuk kontrol pada formulir.

Misalnya, formulir yang Anda buka merupakan daftar formulir klien yang berkelanjutan. Jika Anda ingin fokus berpindah ke catatan klien tertentu saat formulir terbuka, Anda bisa mengatur properti OpenArgs ke nama klien, lalu gunakan tindakan FindRecord dalam makro Buka untuk memindahkan fokus ke catatan untuk klien dengan nama yang ditentukan.

Contoh

Contoh ini menggunakan properti OpenArgs untuk membuka formulir Karyawan ke data karyawan tertentu dan menunjukkan cara metode OpenForm mengatur properti OpenArgs. Anda dapat menjalankan prosedur sebagaimana mestinya, misalnya ketika acara AfterUpdate berlangsung saat kotak dialog kustom digunakan untuk memasukkan informasi baru mengenai karyawan.

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

Contoh berikutnya menggunakan metode FindFirst untuk menempatkan karyawan yang dituliskan pada properti 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