Berlaku untuk
Objek Formulir |
Objek Laporan |
Menentukan ekspresi string yang ditentukan oleh argumen OpenArgsdari metodeOpenForm yang dibuka di formulir. Baca/tulis Variant.
ekspresi.OpenArgs
ekspresi Diperlukan. Ekspresi yang mengembalikan salah satu objek dalam daftar Berlaku Untuk.
Keterangan
Properti ini hanya dapat tersedia dalam makro atau dengan kode Visual Basic for Applications (VBA) dengan metode OpenForm dari objek DoCmd. Pengaturan properti ini hanya bersifat baca saja dalam semua tampilan.
Untuk menggunakan properti OpenArgs, buka formulir menggunakan metode OpenForm dari objek DoCmd dan tentukan argumen OpenArgs ekspresi string yang diinginkan. Pengaturan properti OpenArgs kemudian dapat digunakan dalam kode untuk formulir, seperti yang ada di prosedur kejadian Buka. Anda juga dapat merujuk pada pengaturan properti makro, seperti makro Terbuka, atau ekspresi, seperti ekspresi yang mengatur properti ControlSource untuk kontrol di formulir.
Misalnya, formulir yang Anda buka merupakan daftar formulir klien yang berkelanjutan. Jika menginginkan fokus dipindahkan ke data klien tertentu saat formulir terbuka, Anda dapat menetapkan properti OpenArgs ke nama klien, lalu menggunakan tindakan FindRecord dalam makro Terbuka untuk memindahkan fokus ke data 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