קורסי מיקרוסופט לארגונים – כרמל הדרכה

Microsoft Partner

קורס אקסל VBA – משתנים

תוכן עניינים

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

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

למשל, ניתן לשלב במהלך רצף הפקודות את שורת הקוד:

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

כללים לשם המשתנה:

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

הכרזה על משתנים

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

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

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

 

  • Dim (מהמילה Dimension, ממדים) – לפתיחת ההכרזה על משתנה.
  • שם המשתנה – Mish בדוגמה הנוכחית.
  • סוג המשתנה – String: לנתונים מסוג מחרוזות טקסטואליות.

ישנם סוגים רבים של משתנים. להלן מספר סוגים עיקריים:

Variant – משתנה-על. יכול להכיל כל ערך ותופס מקום רב בזיכרון. לא חובה להכריז על משתנה Variant. משתנה שלא הוכרז יקבע אוטומטית מסוג Variant.

String – לאחסנת מחרוזות תווים.

Date – לאחסנת תאריכים.

Byte – לאחסנת מספרים בלבד 0 עד 255.

Integer – לאחסנת מספרים בלבד בין 32,768- עד 32,768.

Long – לאחסנת מספרים בלבד בין 2,147,483,648- עד 2,147,483,648.

Range – לאחסנת טווחים.

ניתן להגדיר חובת הכרזת משתנים בכל קוד בו הם מופיעים:

  1. תפריט Tools בעורך ה-VBA.
  2. Options.
  3. יש לסמן את תיבת הבחירה Require Variable Declaration בלשונית Editor.

בדוגמה הבאה, הקוד מאחסן את ערך המע"מ מתוך מחיר נתון, אל תוך משתנה:

השורה הראשונה פוקדת, שהערך בתא מתחת לתא הפעיל, יהיה הטקסט "Total Bill".

השורה השנייה פוקדת, שבתוך המשתנה Total_Price יוצב הערך של התא הפעיל.

השורה השלישית פוקדת, שבתוך המשתנה Vat_Prod יוצב הערך שהוא תוצאת המכפלה בין הערך שבתא 1A והערך של המשתנה Total_Price (שבו כאמור הוצב הערך שבתא הפעיל, לפי שורת הקוד הקודמת).

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

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

חלונית Locals

חלונית Locals מציגה את האחסונים הזמניים ואת המידע המתחלף בתוכם במהלך ריצת הקוד. כדי להציג את חלונית Locals יש לבחור אותה מתוך תפריט View. החלונית תופיע בתחתית ממשק העורך:

אחסון המשתנים הוא זמני, כאמור, ומתרוקן מיד עם סיום ריצת הקוד. לכן, כדי לצפות במידע המוצב ומתחלף בתוך המשתנים בזמן אמת, יש להריץ את הקוד במצב של צעד אחר צעד (Step Into או מקש F8).

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

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

מגיעים אליכם

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

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

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

תוכנית מותאמת

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

למדו מהמומחים שלנו
טיפ לשימוש ב- Excel VBA
קורס אקסל VBA – קבצים Excel VBA

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

קרא עוד »
קורס אקסל VBA
קורס אקסל VBA – מרכז יחסי האמון ורמות אבטחה

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

קרא עוד »
קורס אקסל VBA
קורס אקסל VBA – הגנה ונעילה

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

קרא עוד »
קורס אקסל VBA
קורס אקסל VBA – אירועים

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

קרא עוד »
קורס אקסל VBA
קורס אקסל VBA – מודול עריכה Class Module

Class Module הוא מודול עריכה נוסף ב-VBA (בשונה מהמודול הרגיל לעריכת פקודות שנידון עד כה), המשמש ליצירת אובייקט מסוג חדש. Collection של פריטים ניתן ליצור במודול רגיל, אולם ליצירה של אובייקטים מותאמים אישית חדשים של ממש ואיסופם אל תוך Collection מותאם אישית, יש לפתוח Class Module חדש.

קרא עוד »

מתחיל ב-06.06.2024

1 מפגש

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