אקסס למתחילים: תגובות
-
@שואף-לדעת אמר באקסס למתחילים: תגובות:
אך הבעיה יותר גדולה: כאשר אני סוגר את הטופס לא מתרחש כלום, לא הודעה ולא עדכון של הסטטוס, הטופס פשוט נסגר וזהו.
כי יש לך שגיאת כתיב כל היכן שכתוב
Message
כתבת עםa
במקוםe
עריכה:
בעצם בגלל שהשגיאה עקבית והיא רק בשם משתנה זה לא אמור להפריע. -
@שואף-לדעת יש לך חוסר עקביות בשם המשתנה:
כדי להתמודד עם השם החדש, הקומפיילר יוצר משתנה חדש בשם זה ומקצה לו ערך ברירת מחדל Null.
מפני שזו לא הפעם הראשונה שזה קורה לך, וכדי להמנע משגיאות כאלו בעתיד, תוסיף בראש העמוד את ההוראה:Option Explicit
הוראה זו מורה לקומפיילר להגביל את השימוש בקוד רק למשתנים שהוצהרו בפירוש קודם לכן.
אני ממליץ לך להפעיל אופציה זו באופן קבוע מכאן ואילך, על ידי ההגדרה הבאה באופציות של עורך ה-VBA:
-
@שואף-לדעת אמר באקסס למתחילים: תגובות:
א. בדו"ח מופיע בכל עמוד שני דוחות, מדוע ?
מספר הדוחות בעמוד נקבע לפי גודל (גובה) הדוח. הואיל והוא לא ממלא דף שלם, אקסס מציגה עוד אחד באותו העמוד. בהמשך אי"ה נלמד כיצד להציג דוח מסויים בלבד.
ב. רצ"ב תמונות טופס בתצוגת עיצוב ובתצוגת טופס, אני לא מבין מדוע הכותרת התחתית נראית כך ?
זהו שוב עניין של עוגן אופקי. בחר את הפקדים בכותרת התחתונה והגדר במאפיינים עוגן אופקי=ימין.
-
עכשיו בשעה טובה סיימתי לבצע את שני השיעורים האחרונים...
בפעם הבא אשתדל להגיש בזמן.@odeddvir אמר באקסס למתחילים: יצירת מערכת לניהול תורמים:
למעשה, היינו צריכים להנהיג הנהגה זו כבר מתחילת המדריך, מהטופס הראשון שעשינו, אך נמנעתי מלהזכיר זאת עד עתה, פן ינחם העם בראותם מלחמה...
על כל פנים, מעתה זו תהיה הנחת היסוד: מכאן והלאה לבצע את שינוי השם לכל שדה מאוגד בטופס.
את הטיפול בכל הטפסים הקודמים נשאיר לשיעורי הבית (מסכן @בערל...)בהתחלה נבהלתי, אבל בסוף זה לקח לא יותר מעשר דקות....
כנראה זה פחות מעשר אחוז מהזמן שאתה משקיע בכל פרק...
-
@odeddvir יש לי מס' שאלות ברשותך:
א. מדוע אתה מסתייג מאוד משימוש ב"מקרו" ?
ב. מדוע אינך נעזר באשף של לחצני הפקודות (בגלל שהוא עובד עם מקרו...) ?
ג. האם שמעת על פלטפורמה בשם: Digital-clay זה נועד לבנות מסדים כמו שאנו עושים וזה בנוי על אקסס (מאחורי הקלעים) והם משתבחים בכך שאין צורך בכתיבת קוד כלל !! הכתובת כאן , פעם "הסתובבתי שם" וזה השאיר לי רושם שיש שם יותר גמישות ואפשרויות. -
@שואף-לדעת אמר באקסס למתחילים: תגובות:
א. מדוע אתה מסתייג מאוד משימוש ב"מקרו" ?
הרעיון מאחורי מאקרו'ס הוא שהם נועדו להקל על המשתמש בכך שיחסכו לו כתיבת קוד, ולכאורה לקצר את זמן הפיתוח.
כמו קופסה שחורה שבכמה קליקים - גורמת למחשב לעשות בשבילך מה שביקשת בצורה פלאית וקסומה.וזו בדיוק הסיבה שאני נמנע מהם.
כשהתוכנה שלך מכילה איזורים מופלאים וקסומים - היא מאוד קשה לתחזוק, לניפוי שגיאות, ובעצם להבנה מה קורה פה בכלל.
כמה מעלות טובות ל-VBA עלינו:
- קוד VBA הוא כלי הרבה יותר עוצמתי וגמיש. בקוד אפשר: לבצע קריאות API לWindows (כמו למשל לשנות רזולוציה של המסך), לשלוח מייל, לערוך קובץ טקסט, ליצור קובץ אקסל, לחפש בדף אינטרנט וכו' וכו' וכו'
- כל מאקרו ניתן לביצוע בצורה יותר יעילה בקוד.
- בקוד ניתן להשתמש בקלות שימוש חוזר, על ידי כתיבת פונקציה כללית.
- בקוד יש לך שליטה מלאה על הנעשה (טיפוסי נתונים למשל)
- ניתן לבצע דיבוג של הקוד על ידי Watch על משתנה בזמן אמת. ניתן אפילו לשנות ערך של משתנה בזמן ריצה.
- במקרה של שגיאה, יש מידע שימושי אודות השגיאה שנוצרה, וממילא קל יותר לפתור אותה.
ב. מדוע אינך נעזר באשף של לחצני הפקודות (בגלל שהוא עובד עם מקרו...) ?
ענית בעצמך...
ג. האם שמעת על פלטפורמה בשם: Digital-clay זה נועד לבנות מסדים כמו שאנו עושים וזה בנוי על אקסס (מאחורי הקלעים) והם משתבחים בכך שאין צורך בכתיבת קוד כלל !! הכתובת כאן , פעם "הסתובבתי שם" וזה השאיר לי רושם שיש שם יותר גמישות ואפשרויות.
לא. ניסיתי קצת לבדוק שם אבל לא ראיתי שמזכירים אקסס שם, אבל בכל מקרה זה לא מעניין אותי להוסיף עוד טלאים על אקסס, אני מחפש אם כבר לשפר אותה עד כמה שניתן.
-
@ענן השאלה שלך אולי מבוססת על המדריך שלי, אבל לא קשורה אליו ישירות, אודה אם תפתח פוסט נפרד עבורה, כדי לשמור על הסדר.
מכל מקום, אין לי שום דרך להבין מה הבעיה מתוך הקטע הקצר שצירפת.
נא צרף את כל נוסח השאילתא המדוברת, בתוספת רקע על הטבלאות המעורבות, ומה אתה מבקש לעשות, ושמא אז אוכל לעזור. -
@שואף-לדעת אמר באקסס למתחילים: תגובות:
לצערי אני מנסה לשנות את הרוחב של הטופס והוא תמיד חוזר לגודל הקודם (21.53).
שינוי הגודל לא מצליח כי כנראה שיש לך פקד בטופס שרחב יותר מ8 ס"מ (או לייתר דיוק - רחב לפחות 21.53 ס"מ). מסתמא זו תוית הכותרת, אקסס נוהגת להקצות לפקד הזה רוחב בשפע.