שאלה באקסס // שאילתא לפי שם כפתור
-
Me!a = Me.ActiveControl.Name DoCmd.OpenQuery "qq", acViewNormal DoCmd.Requery "pp"
-
@אוריי תסגור את השאילתא הפתוחה ותפתח אותה מחדש
docmd.Close acQuery, "qq" 'תעדכן את השאילתא docmd.OpenQuery "qq"
תנסה אולי הקוד הבא יעבוד (בלי לסגור ולפתוח)
DoCmd.SelectObject acQuery, "qq" DoCmd.Requery
-
@אוריי תסגור את השאילתא הפתוחה ותפתח אותה מחדש
docmd.Close acQuery, "qq" 'תעדכן את השאילתא docmd.OpenQuery "qq"
תנסה אולי הקוד הבא יעבוד (בלי לסגור ולפתוח)
DoCmd.SelectObject acQuery, "qq" DoCmd.Requery
-
@OdedDvir אמר בשאלה באקסס // שאילתא לפי שם כפתור:
@אוריי יפה. אבל נראה לי שאם השאילתה עדיין לא פתוחה תקבל שגיאה.. נכון?
לא!
זה עובד מצוין
כי הוא מנסה לסגור ואם הוא סגור הוא עובר לפקודה הבאה שצריך לפתוח אותהרק עוד שאלה קטנה אם אני צריך לעשות את אותם הפעולות בטופס מה אני משנה ולמה?
-
@OdedDvir אמר בשאלה באקסס // שאילתא לפי שם כפתור:
@אוריי יפה. אבל נראה לי שאם השאילתה עדיין לא פתוחה תקבל שגיאה.. נכון?
לא!
זה עובד מצוין
כי הוא מנסה לסגור ואם הוא סגור הוא עובר לפקודה הבאה שצריך לפתוח אותהרק עוד שאלה קטנה אם אני צריך לעשות את אותם הפעולות בטופס מה אני משנה ולמה?
@אוריי אמר בשאלה באקסס // שאילתא לפי שם כפתור:
רק עוד שאלה קטנה אם אני צריך לעשות את אותם הפעולות בטופס מה אני משנה ולמה?
אם זה הטופס הפעיל פשוט תכתוב
Me.Requery
אם זה טופס משנה של הטופס הפעיל, ושם הפקד של טופס המשנה הוא foo
Me.foo.Form.Requery
אם זה טופס אחר (שלא פעיל) אפשר באופן דומה לשאילתא
DoCmd.SelectObject acForm, "MyFormName" DoCmd.Requery
או
Forms("MyFormName").Requery
-
@אוריי אמר בשאלה באקסס // שאילתא לפי שם כפתור:
רק עוד שאלה קטנה אם אני צריך לעשות את אותם הפעולות בטופס מה אני משנה ולמה?
אם זה הטופס הפעיל פשוט תכתוב
Me.Requery
אם זה טופס משנה של הטופס הפעיל, ושם הפקד של טופס המשנה הוא foo
Me.foo.Form.Requery
אם זה טופס אחר (שלא פעיל) אפשר באופן דומה לשאילתא
DoCmd.SelectObject acForm, "MyFormName" DoCmd.Requery
או
Forms("MyFormName").Requery
-
@OdedDvir אני מרשה לעצמי להזכיר לך שפתיחה של שאילתה באופן של DoCmd.OpenQuery עלולה לאפשר למשתמש לשנות נתונים בטבלאות, ואם זו לא ההתנהגות שאתה מחפש, תציין זאת במפורש בפתיחה:
DoCmd.OpenQuery "qq", acViewNormal, acReadOnly
-
@אוריי באקסס ניתן לכתוב ולקרוא למשתנה עם שם הפקד של הכרטיסיה, על מנת לקבל את מספר הכרטיסת הפתוחה או לעבור לכרטסת מסויימת. הכרטיסיות ממוספרות עם בסיס 0, ז"א הכרטסת הראשונה מספרה 0, השנייה 1 וכו'.
ניתן לעבור אל כרטסת על ידי כתיבה למשתנה עם שם הפקד.
למשל כדי לעבור לכרטסת השלישית, נכתוב את המספר 2:me.TabCtrName = 2
כדי לבדוק איזה כרטסת מוצגת כרגע, אפשר לקרוא את הערך בפקד
if me.TabCtrlName = 1 then ... 'אם הכרטסת השנייה פתוחה
-
@אוריי באקסס ניתן לכתוב ולקרוא למשתנה עם שם הפקד של הכרטיסיה, על מנת לקבל את מספר הכרטיסת הפתוחה או לעבור לכרטסת מסויימת. הכרטיסיות ממוספרות עם בסיס 0, ז"א הכרטסת הראשונה מספרה 0, השנייה 1 וכו'.
ניתן לעבור אל כרטסת על ידי כתיבה למשתנה עם שם הפקד.
למשל כדי לעבור לכרטסת השלישית, נכתוב את המספר 2:me.TabCtrName = 2
כדי לבדוק איזה כרטסת מוצגת כרגע, אפשר לקרוא את הערך בפקד
if me.TabCtrlName = 1 then ... 'אם הכרטסת השנייה פתוחה
-
@אוריי אמר בשאלה באקסס // שאילתא לפי שם כפתור:
Page1
Page2
וכו'אלו שמות העמודים (ה"חוצצים" או הכותרות) של הפקד, מה שם הפקד שמכיל את כל העמודים?
-
@אוריי באקסס ניתן לכתוב ולקרוא למשתנה עם שם הפקד של הכרטיסיה, על מנת לקבל את מספר הכרטיסת הפתוחה או לעבור לכרטסת מסויימת. הכרטיסיות ממוספרות עם בסיס 0, ז"א הכרטסת הראשונה מספרה 0, השנייה 1 וכו'.
ניתן לעבור אל כרטסת על ידי כתיבה למשתנה עם שם הפקד.
למשל כדי לעבור לכרטסת השלישית, נכתוב את המספר 2:me.TabCtrName = 2
כדי לבדוק איזה כרטסת מוצגת כרגע, אפשר לקרוא את הערך בפקד
if me.TabCtrlName = 1 then ... 'אם הכרטסת השנייה פתוחה
-
כפי שציינתי קודם, ניתן לעבור לפי מספר הכרטסת (בסיס 0)
Me.Libraries = 2 ' עובר לכרטיסיה השלישית
אפשר גם לציין את שם הכרטיסיה בפירוש:
Me.Libraries.Pages("Page3").SetFocus 'עובר לכרטיסיה השלישית