חל על
אובייקט Form |
אובייקט Report |
קביעת ביטוי מחרוזת שצוין על-ידי הארגומנט OpenArgs של פעולת השירות OpenForm שפתחה קובץ. קריאה/כתיבה Variant.
ביטוי.OpenArgs
ביטוי נדרש. ביטוי שמחזיר אחד מהאובייקטים ברשימה חל על.
הערות
מאפיין זה זמין רק על-ידי שימוש ב- מאקרו או על-ידי שימוש בקוד Visual Basic for Applications (VBA) עם פעולת השירות OpenForm של האובייקט DoCmd. הגדרת מאפיין זה מוגדרת לקריאה בלבד בכל התצוגות.
כדי להשתמש במאפיין OpenArgs, פתח טופס על-ידי שימוש בפעולת השירות OpenForm של האובייקט DoCmd והגדר את הארגומנט OpenArgs לביטוי המחרוזת הרצוי. הגדרת המאפיין OpenArgs יכולה לשמש לאחר מכן בקוד עבור הטופס, כגון ב- פרוצדורת אירוע Open. באפשרותך גם להפנות להגדרת המאפיין במאקרו, כגון המאקרו Open, או בביטוי, כגון ביטוי המגדיר את המאפיין ControlSource עבור פקד בטופס.
לדוגמה, נניח שהטופס שאתה פותח הוא רשימת לקוחות בטופס רציף. אם ברצונך ש- מוקד יעבור אל רשומה של לקוח מסוים כאשר הטופס נפתח, באפשרותך להגדיר את המאפיין OpenArgs לשם הלקוח ולאחר מכן להשתמש בפעולה FindRecord במאקרו Open כדי להעביר את המוקד אל הרשומה עבור הלקוח בעל השם שצוין.
דוגמה
הדוגמה הבאה משתמשת במאפיין OpenArgs כדי לפתוח את הטופס 'עובדים' לרשומת עובד ספציפית ומדגימה כיצד פעולת השירות OpenForm מגדירה את המאפיין OpenArgs. ניתן להפעיל פרוצדורה זו לפי הצורך – לדוגמה, כאשר האירוע AfterUpdate מתרחש עבור תיבת דו-שיח מותאמת אישית המשמשת להזנת מידע חדש אודות עובד.
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
הדוגמה הבאה משתמשת בפעולת השירות FindFirst כדי לאתר את העובד ששמו מצוין במאפיין 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