אני מצהיר במקטע DECLERATION על משתנה : PUBLIC VAR AS STRING מדוע המשתנה לא זמין לטפסים אחרים?והאם יש דרך אחרת להשתמש במשתנים בין טופס לטופס? תודה מראש דוד
אפשרות אחת היא להעביר את הגדרת המשתנים אל מודול במקום בטופס. אפשרות שניה היא להעביר את המשתנים בין הטפסים באמצעות OpenArgs. ראה את הדוגמא : DoCmd.OpenForm "YourFormName", , , , ,iVar דרור MCP, MCSP
1.לגבי השיטה הראשונה.אני צריך להצהיר על המשתנה באחד המודולים ולקרוא או לשנות ערכו בכל מודול של טופס?זו הכוונה? 2.לגבי OPENARG אני מכיר אבל אני מוגבל למשתנה אחד. תודה מראש דוד
א. ההגדרה מתבצעת פעם אחת בלבד במודול. מכאן והלאה אתה פונה אליו מכל מקום, בכל טופס, וקורא את ערכו או משנה אותו. ב. נכון שב OpenArgs אפשר לשים רק משתנה אחד *אבל* כידוע לך תכנות זה לא רק syntax אלא גם אמנות ולכן מה דעתך על המשפט הבא OpenArgs="var1,var2,var3" OpenArgs עדיין מכיל רק ערך אחד אבל בעזרת פונקציה קטנה אפשר לחלץ מתוכו את ערכי המשנה המופרדים בעזרת פסיק. ההבדל בין השיטות הוא בעיקר אישי אם כי יש תאוריות רבות על היתרונות והחסרונות של כל שיטה. באופן כללי כדאי לדעת ששימוש מופרז במשתנים גלובליים מעיד על בעיית תכנות. דרור MCP, MCPS