טפסים במאקרו של Excel

ברוכים הבאים לשיעור 14 בקורס המאקרו VBA באקסל.

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

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

מהו בעצם טופס ?

כמו בכל תוכנה, כל התקשורת שלנו עם המחשב, נעשית באמצעות טפסים (מה שנקרא לפעמים “מסכים”).

כל טופס (=מסך) מכיל כל מיני מרכיבים : כפתורים, שדות שבהם אנחנו מכניסים מספרים, כותרות ומשפטים שמסבירים לנו מהו כל שדה, ועוד.

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

איך מוסיפים טופס לקוד מאקרו ?

עד היום - כל הקוד שכתבנו היה מרוכז בתוך “מודולים”.

כדי להוסיף טופס, נלחץ מקש ימני על מודול > נבחר ב Insert > ואז ב Userform .

איך לצייר כפתורים ושדות (=פקדים) עד הטופס ?

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

ולצייר אותם על הטופס שיצרנו.

טפסים במאקרו
טפסים במאקרו
טפסים במאקרו
Photo by gardnertoo

כמובן, שהפקדים האלו עדין לא עושים כלום, ונהיה חייבים לשלם קוד כדי שהם יעשו מה שנרצה שיקרה.

דוגמא בפועל - הוספת כפתור ושדה טקסט על טופס

לצורך הדוגמא - נצייר כפתור ושדה טקסט על הטופס

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

כאשר מישהו ילחץ על הכפתור.

אם נרצה לחזור לעיצוב הטופס - נלחץ בעץ מצד שמאל פעמיים על הטופס - והטופס יחזור למסך.

לצורך הדוגמא - נכתוב קוד קצר שמציג הודעה למשתמש עם תוכן השדה שציירנו.

msgbox textbox1.value

כעת, אם נחזור לטופס (דרך העץ בצד שמאל) נלחץ עליו פעם אחת, ולאחר מכן נפעיל אותו (לחיצה על סימן ה-Play למעלה)

הטופס יופיע על המסך - ונוכל לנסות אותו ולראות את המאקרו בפעולה.

מה הפקודה שמציגה את הטופס

עד כאן, הכל יפה וטוב, אבל לא ברור עדין, איך המשתמש יפעיל / יציג את הטופס.

הרי לא נרצה שהמשתמש שלנו יכנס כל פעם לקוד ה-VBA… נכון ?

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

userform1.show

שימו לב - אני רשמתי userform1 כי זה שם הטופס אצלי, אם שיניתם את שם הטופס אצלכם - כמובן תשנו את הקוד בהתאם.

וכעת נפעיל את המאקרו (או נצמיד אותו לכפתור / לצורה כמו שלמדנו ).

וזהו להיום.

 

בהצלחה!