MICROSOFT LOGO
MICROSOFT LOGO
קורס אקסל VBA

קורס אקסל VBA – אינטראקציה עם המשתמש

ניתן לפתח חלונות קופצים, שמציגים הודעות למשתמש ואף אוספים ממנו מידע. חלונות דו-שיח אלה מהווים את אחת התכונות החזקות והמשמעותיות ביותר ב-VBA.
carmel website
carmel-website
carmel-website
ניתן לפתח חלונות קופצים, שמציגים הודעות למשתמש ואף אוספים ממנו מידע. חלונות דו-שיח אלה מהווים את אחת התכונות החזקות והמשמעותיות ביותר ב-VBA.

ראשית, תכונה זו מאפשרת לעצור זמנית ריצת קוד כדי לקבל מידע מהמשתמש, שבאמצעותו יותנה אופן המשך ריצת הקוד. שנית, היא מאפשרת לייצר חלונות של ממש הבונים מסגרת של תוכנה חדשה על-בסיס ה-Excel.

במסגרת ספר זה יוצגו שתי תיבות דו-שיח ליצירת אינטראקציה עם המשתמש:

MsgBox – חלון הודעות שקופץ למשתמש ומאפשר להציג לו מידע. כדי להפסיק את הופעת החלון, המשתמש יכול ללחוץ על אחד מכפתורים שהוגדרו בחלון, כמו אישור, ביטול, כן, לא ועוד. תוכן הכפתור שבחר המשתמש, יכול לשמש כמידע אליו מתייחס המשך הקוד.

InputBox – חלון המאפשר למשתמש להקליד מידע בשדה הזנה פתוח.

MsgBox – באמצעות הפקודה MsgBox ניתן להציג הודעות למשתמש, ובזכות מבחר כפתורים ניתן לאסוף ממנו מידע.

מבנה הפקודה המלא

להלן התחביר של הפקודה:

MsgBox( prompt [, buttons] [, title] [, helpfile, context] )

  • Prompt – זהו שדה חובה. בפרמטר זה יש להזין את ההודעה למשתמש, שתופיע בגוף החלון. ניתן לשלב גם ערכים מתוך משתנים ופקודות נוספות המטפלות בטקסט כמו: יישור הטקסט (מועיל במיוחד לטקסט בעברית), יצירת שורה חדשה ועוד.
  • Buttons – אפשרויות הכפתורים שניתן להוסיף לחלון. את הבחירה של המשתמש (תוכן הכפתור שעליו לחץ) ניתן לאחסן בתוך משתנה. מספר אפשרויות כפתורים לדוגמא:
    • vbOK
    • vbOKCancel
    • vbAbortRetryIgnore
    • vbYesNo
    • vbYesNoCancel
    • vbRetryCancel
  • Title – להזנת את הכותרת של החלון.
  • Helpfileו-Context – לשיוך קובץ עזרה, אם המשתמש בחר ללחוץ על כפתור מסוג עזרה.

הדוגמא הבאה מציגה חלון אינטראקציה שניתן ליצור, עם הפרמטרים שצוינו:

להלן הקוד ליצירת החלון:

הדוגמה הבאה מציגה שימוש בMsgBox– עם כפתורים מותאמים אישית. תוכן הכפתור, שעליו ילחץ המשתמש, בתוך יאחסן משתנה:

UserAnswer הוא המשתנה שלתוכו יאוחסן תוצאות הבחירה של המשתמש.

vbYesNo – סוג הכפתור הרצוי שמאפשר למשתמש לבחור בין לחיצה על כפתור "כן" וכפתור "לא".

vbNewLine – פקודת עזר להוספת שורה חדשה וירידת שורה יזומה, בפרמטר התוכן המילולי של החלון. ישנן מספר פקודות עזר המסייעות לעיצוב וארגון חלון ההודעה.

להלן חלון ה-MsgBox שיוצר קוד זה:

להלן תצוגת חלונית Locals לאחר בחירת המשתמש בכפתור "כן":

ניתן לראות שבחירת המשתמש בכפתור "כן", הזינה לתוך המשתנה UserAnswer את הערך 6.

בחירה בכפתור "לא" הייתה מזינה אל תוך המשתנה את הערך 7. כלומר, לכל אחד מהכפתורים ב-VBA יש ערך קבוע:

OK                  1

Cancel            2

Abort              3

Retry               4

Ignore             5

Yes                  6

No                   7

הדוגמה הבאה מציגה שימוש בערך אותו בחר המשתמש בעת הלחיצה על אחד הכפתורים. הגיליון הבא מציג פלט יומי בטבלת מכירות שביצעו עובדים. יש לבצע בדיקה על כל טבלה יומית כדי לבדוק עמידה ביעדים והכלליים היומיים:

הקוד הבא מציג בדיקה על מכירות מתחת ל-200 $. באמצעות לולאה (ר' עמ' 68) הקוד רץ על כל רשומה בטבלה ובודק באמצעות תנאי If (ר' עמ' 51) אם ערך המכירה קטן מ-200. אם ימצא ערך כזה מיד יקפוץ חלון הודעה למשתמש:

ניתן לראות כי המשתמש יכול לבחור בין OK ו-Cancel בחלון ההודעה. אם הוא בחר ב-Cancel, כלומר לתוך המשתנה ANS יכנס הערך 2, מיד תופסק ריצת הקוד, באמצעות GoTo (ר' עמ' 58) אל סוף הקוד.

להלן חלון ה-MsgBox שיוצר קוד זה:

מבנה הפקודה המקוצר

המבנה המלא הנ"ל של הפקודה, משמש לרוב כאשר יש צורך בהגדרת כפתורים בחלון לשם איסוף תוכן הבחירה של המשתמש, לשם שימוש בהמשך הקוד. אולם, ניתן ליצור חלון MsgBox פשוט ללא כפתורים וללא הגדרת כותרת. לשם כך ניתן לציין רק את הפרמטר הראשון ללא סוגריים וללא הפרמטרים האחרים, לפי המבנה הבא:

MsgBox "{Text}"

לדוגמה:

MsgBox "Welcome"

כיוון שמבנה זה כולל את תוכן ההודעה כמחרוזת טקסט בלבד, ניתן לטפל בו כבמחרוזת טקסט (ר' עמ' 47), ולשרשר לו מידע נוסף.

הדוגמה הבאה מציגה שרשור של תוכן הודעה מילולי לשם המשתמש ושם הגיליון:

להלן חלון ה-MsgBox שיוצר קוד זה:

InputBox

באמצעות הפקודה InputBox ניתן לקבל מידע מהמשתמש אותו הוא יכול להזין בתוך שדה להקלדה חופשית המופיע בחלון ההודעה.

להלן התחביר של הפקודה:

InputBox( prompt [, title] [, default value] )

  • Prompt – זהו שדה חובה. בפרמטר זה יש להזין את ההודעה למשתמש, שתופיע בגוף החלון. ניתן לשלב גם ערכים מתוך משתנים ופקודות נוספות המטפלות בטקסט כמו: יישור הטקסט (מועיל במיוחד לטקסט בעברית), יצירת שורה חדשה ועוד.
  • Title – להזנת את הכותרת של החלון.
  • Default Value – אפשרות להצגת ערך ברירת מחדל, שיופיע בשדה ההזנה. פרמטר זה אינו חובה.

הדוגמה הבאה מציגה אחסון של המידע, שהמשתמש מזין בשדה ההזנה:

להלן חלון ה-InputBox שיוצר קוד זה:

להלן תצוגת חלונית Locals לאחר בחירת המשתמש בכפתור :

תוכן עניינים

מלאו פרטים ונחזור אליכם בהקדם
למדו מהמומחים שלנו
קורסים נוספים
למה לבחור בכרמל הדרכה?
אנחנו מציעים פתרונות איכותיים להדרכות מקצועיות שחוסכות לכם זמן ומשאבים, ומספקים לכם את הכלים לקחת את הכישורים שלכם צעד קדימה!
carmel website
מרצים מובילים

בעלי ניסיון הדרכתי
ומעשי עשיר

carmel website
מגיעים אליכם

אתם קובעים את
מיקום הקורס והמועד

carmel website
תאוריה ותרגול

חומרי לימוד ומעבדות
רשמיות של מיקרוסופט הזמינים בענן

carmel website
תוכנית מותאמת

התאמה מלאה ואישית
לדרישות ולצרכי הארגון

מתחיל ב-07.01.2025

3 מפגשים

16:00 - 09:00
דילוג לתוכן