מטרת הקורס היא לעזור לאנשים שמעולם לא כתבו תוכנית לפני כן ללמוד לכתוב קורס כזה. אין סיבה שעובדי משרד, עקרות בית, מהנדסים מקצועיים ואנשי משלוחי פיצה לא אמור להיות מסוגל לנצל תוכניות מחשב מותאמות אישית משלהם בעבודה כדי לעבוד מהר יותר חכם יותר. זה לא צריך לקחת 'מתכנת מקצועי' (מה שזה לא יהיה) כדי לבצע את העבודה. אתה יודע מה צריך לעשות טוב יותר מכל אחד אחר. אתה יכול לעשות את זה בעצמך!
(ואני אומר את זה כמי שבילה שנים רבות בכתיבת תוכניות לאנשים אחרים... 'באופן מקצועי'.)
עם זאת, אין זה קורס לשימוש במחשב.
קורס זה מניח שאתה יודע להשתמש בתוכנה פופולרית ובמיוחד שיש לך התקנת Microsoft Word 2007 במחשב שלך. עליכם לדעת מיומנויות מחשב בסיסיות כמו יצירת תיקיות קבצים (כלומר ספריות) וכיצד להעביר ולהעתיק קבצים. אבל אם תמיד תהיתם מהי בעצם תוכנית מחשב, זה בסדר. נראה לך.
Microsoft Office אינו זול. אבל אתה יכול לקבל ערך רב יותר מהתוכנה היקרה שכבר התקנת. זו סיבה גדולה שאנו משתמשים בה ויז'ואל בייסיק עבור יישומים, או VBA, יחד עם Microsoft Office. יש מיליונים שיש להם את זה וקומץ (אולי אף אחד) שמשתמש בכל מה שהוא יכול לעשות.
לפני שנמשיך, אני צריך להסביר עוד דבר אחד ב- VBA. בפברואר 2002, מיקרוסופט ביצעה הימור של 300 מיליארד דולר על בסיס טכנולוגיה חדש לחלוטין עבור כל החברה שלה. הם קראו לזה .NET. מאז, מיקרוסופט העבירה את כל בסיס הטכנולוגיה שלה ל- VB.NET. VBA הוא כלי התכנות האחרון ביותר שעדיין משתמש ב- VB6, הטכנולוגיה המוכחת והאמיתית אשר שימשה לפני VB.NET. (תראה את הביטוי "מבוסס COM" כדי לתאר טכנולוגיה זו ברמת VB6.)
VSTO ו- VBA
מיקרוסופט יצרה דרך לכתוב תוכניות VB.NET עבור Office 2007. זה נקרא Visual Studio Tools for Office (VSTO). הבעיה עם VSTO היא שאתה צריך לקנות וללמוד להשתמש ב- Visual Studio Professional. אקסל עצמה עדיין מבוססת גם על COM ותוכניות NET צריכות לעבוד עם Excel באמצעות ממשק (נקרא PIA, ראש הממשלה האסיפה).
כך... עד שמיקרוסופט תביא את הפעולה ביחד ותתן לך דרך לכתוב תוכניות שיעבדו עם Word ולא תגרום לך להצטרף למחלקת ה- IT, פקודות מאקרו VBA הן עדיין הדרך ללכת.
סיבה נוספת שאנו משתמשים ב- VBA היא שהיא באמת 'אפויה לחלוטין' (לא אפויה למחצה) פיתוח תוכנה סביבה ששימשה במשך שנים על ידי מתכנתים ליצירת כמה מהמערכות המתוחכמות ביותר שקיימות. לא משנה כמה מוגדרים מראות התכנות שלכם. ל- Visual Basic יש את הכוח לקחת אותך לשם.
מה זה מאקרו?
ייתכן שהשתמשת ביישומי שולחן עבודה שתומכים במה שמכונה שפת מאקרו לפני כן. באופן מקובל, קבצי מקרו הם רק סקריפטים של פעולות מקלדת המקובצות יחד עם שם אחד, כך שתוכלו לבצע את כולם בבת אחת. אם אתה תמיד מתחיל את היום בפתיחת המסמך "MyDiary" שלך, הזנת התאריך של היום והקלד את המילים "יומן יקר" - מדוע לא לאפשר למחשב שלך לעשות זאת בשבילך? כדי להיות בקנה אחד עם תוכנה אחרת, מיקרוסופט מכנה גם VBA שפת מאקרו. אבל זה לא. זה הרבה יותר.
יישומים שולחניים רבים כוללים כלי תוכנה שיאפשר לך להקליט מאקרו "הקשה על מקש". ביישומי מיקרוסופט כלי זה נקרא מקליט המקרו, אך התוצאה אינה מאקרו להקשות מקשים מסורתי. זו תוכנית VBA וההבדל הוא שהיא לא פשוט משחקת מחדש את הקשות. תוכנית VBA מעניקה לך אותה תוצאה סופית במידת האפשר, אך אתה יכול גם לכתוב מערכות מתוחכמות ב- VBA שמשאירות מאקרו מקלדת פשוט באבק. לדוגמה, אתה יכול להשתמש בפונקציות Excel ב- Word באמצעות VBA. ותוכל לשלב VBA במערכות אחרות כמו מסדי נתונים, רשת או יישומי תוכנה אחרים.
למרות שמקליט המקרו VBA שימושי מאוד ליצירת מקררו מקלדת פשוט, מתכנתים גילו שעוד יותר שימושי לתת להם התחלה בריצה בתוכנות מתוחכמות יותר. זה מה שאנחנו הולכים לעשות.
התחל Microsoft Word 2007 עם מסמך ריק ולהתכונן לכתוב תוכנית.
כרטיסיית המפתח ב- Word
אחד הדברים הראשונים שעליך לעשות כדי לכתוב תוכנית Visual Basic ב- Word 2007 הוא מצא את Visual Basic! ברירת המחדל ב- Word 2007 היא לא להציג את הסרט המשמש. להוסיף את מפתח לחץ על הכרטיסייה משרד לחץ על הלחצן (הלוגו בפינה השמאלית העליונה) ואז לחץ על אפשרויות מילים. לחץ על הצג את הכרטיסייה מפתחים ברצועת הכלים ואז לחץ בסדר.
כשאתה לוחץ על מפתח בכרטיסייה, יש לך מערכת כלים חדשה לגמרי המשמשת לכתיבת תוכניות VBA. אנו הולכים להשתמש במקליט המקרו VBA כדי ליצור את התוכנית הראשונה שלך. (אם הסרט עם כל הכלים שלך ממשיך להיעלם, מומלץ ללחוץ באמצעות לחצן העכבר הימני על הסרט ולוודא צמצם את הסרט לא מסומן.)
לחץ על הקלט מאקרו. תן שם למאקרו שלך: AboutVB1 על ידי הקלדת שם זה ב- שם מאקרו תיבת טקסט. בחר את המסמך הנוכחי שלך כמיקום לאחסון המאקרו שלך ולחץ על אישור. ראה את הדוגמא להלן.
(הערה: אם תבחר כל המסמכים (Normal.dotm) מהתפריט הנפתח, תוכנית VBA מבחן זו תהפוך, למעשה, לחלק מ- Word עצמה מכיוון שהיא תהפוך לזמינה עבור כל מסמך שאתה יוצר ב- Word. אם אתה רק רוצה להשתמש במאקרו VBA במסמך ספציפי, או אם אתה רוצה להיות מסוגל לשלוח אותו למישהו אחר, כדאי מאוד לשמור את המאקרו כחלק מהמסמך. רגיל.dotm היא ברירת המחדל ולכן עליך לשנות אותה.)
כאשר מקליט המקרו מופעל, הקלד את הטקסט "שלום עולם." למסמך Word שלך. (מצביע העכבר ישתנה לתמונה מיניאטורית של מחסנית קלטת כדי להראות שמוקלטות הקשות).
(הערה: שלום עולם כמעט נדרש ל"תכנית ראשונה "מכיוון שמדריך התוכנות הראשון למוקדם שפת מחשב "C" השתמשתי בזה. מאז הייתה מסורת.)
לחץ על הפסק להקליט. סגור את Word ושמור את המסמך באמצעות השם: AboutVB1.docm. עליכם לבחור א מסמך מאופשר מאקרו של Word מ ה שמור כסוג להפיל.
זהו זה! כתבת עכשיו תוכנית VBA של Word. בוא נראה איך זה נראה!
הבנת מהי תוכנית VBA
אם סגרת את Word, פתח אותה שוב ובחר AboutVB1.docm קובץ ששמרת בשיעור הקודם. אם הכל נעשה כראוי, אתה אמור לראות באנר בראש חלון המסמך שלך עם אזהרת אבטחה.
VBA וביטחון
VBA הוא אמיתי שפת תכנות. זה אומר ש- VBA יכול לעשות כמעט כל דבר שתצטרך לעשות. וזה, בתורו, פירושו שאם אתה מקבל מסמך Word עם מאקרו משובץ מאיזה 'בחור רע', המאקרו יכול לעשות כמעט כל דבר. אז יש להתייחס ברצינות לאזהרה של מיקרוסופט. מצד שני, אתה כתב את המאקרו הזה וכל מה שהוא עושה זה להקליד "שלום עולם" אז אין כאן שום סיכון. לחץ על הכפתור כדי לאפשר פקודות מאקרו.
כדי לראות מה מקליט המקרו יצר (כמו גם לעשות את רוב הדברים האחרים הכרוכים ב- VBA), עליך להפעיל את עורך Visual Basic. יש אייקון שיעשה זאת בצד שמאל של סרט המפתחים.
ראשית, שימו לב לחלון השמאלי. זה נקרא סייר הפרויקטים וזה מקבץ יחד את האובייקטים ברמה הגבוהה (נדבר עליהם יותר) שהם חלק מהפרויקט Visual Basic שלך.
כאשר מקליט המקרו הופעל, הייתה לכם אפשרות לבחור רגיל התבנית או המסמך הנוכחי כמיקום למאקרו שלך. אם בחרת Normal, אז את NewMacros המודול יהיה חלק מ- רגיל סניף תצוגת Project Explorer. (היית אמור לבחור את המסמך הנוכחי. אם בחרת רגילמחק את המסמך וחזור על ההוראות הקודמות.) בחר NewMacros תחת מודולים בפרויקט הנוכחי שלך. אם עדיין לא מוצג חלון קוד, לחץ על קוד תחת נוף תפריט.
מסמך Word כמכולה VBA
כל תוכנית Visual Basic חייבת להיות במכלול כלשהו של קובץ. במקרה של פקודות מאקרו VBA של Word 2007, מיכל זה הוא מסמך Word ('.docm'). תוכניות VBA של Word אינן יכולות לפעול ללא Word ואינך יכול ליצור תוכניות Visual Basic עצמאיות ('. Exe') כמו שאתה יכול עם Visual Basic 6 או Visual Basic .NET. אבל זה עדיין משאיר עולם שלם של דברים שאתה יכול לעשות.
התוכנית הראשונה שלך בהחלט קצרה ומתוקה, אך היא תשמש להצגת התכונות העיקריות של VBA ועורך Visual Basic.
מקור התוכנית בדרך כלל מורכב מסדרה של תת-רוטינים. כשתסיימו לתכנות מתקדמות יותר, תגלו שדברים אחרים יכולים להיות חלק מהתכנית מלבד תת-השעונים.
נקרא תת-רוטינה ספציפית זו AboutVB1. יש לזווג את כותרת תת-השערה עם כותרת סיום משנה בתחתית. הסוגריים יכולים להחזיק רשימת פרמטרים המורכבת מערכים המועברים לתת-רחוב. שום דבר לא מועבר כאן, אבל הם צריכים להיות שם באזור תת הצהרה בכל מקרה. בהמשך, כאשר אנו מפעילים את המאקרו, נחפש את השם AboutVB1.
יש רק הצהרת תוכנית ממשית אחת בשכנות המשנה:
בחירה. טקסט TypeText: = "שלום עולם!"
חפצים, שיטות ותכונות
הצהרה זו מכילה את שלושת הגדולים:
- חפץ
- שיטה
- נכס
ההצהרה למעשה מוסיפה את הטקסט "שלום עולם." לתוכן המסמך הנוכחי.
המשימה הבאה היא להפעיל את התוכנית שלנו כמה פעמים. ממש כמו לקנות מכונית, כדאי להסיע אותה למשך זמן מה עד שזה מרגיש קצת נוח. אנו עושים זאת בהמשך.
תוכניות ומסמכים
יש לנו את המערכת המפוארת והמורכבת שלנו... המורכב מהצהרת תוכנית אחת... אבל עכשיו אנחנו רוצים לנהל את זה. הנה מה זה כל העניין.
יש כאן מושג אחד שהוא מאוד חשוב ולעתים קרובות הוא מבלבל בין העיתוי הראשון: ההבדל בין תכנית וה מסמך. מושג זה הוא יסודי.
תוכניות VBA צריכות להיות כלולות בקובץ מארח. ב- Word, המארח הוא המסמך. בדוגמה שלנו, זה AboutVB1.docm. התוכנית נשמרת למעשה בתוך המסמך.
לדוגמה, אם זה היה Excel, היינו מדברים על ה- תכנית וה גיליון אלקטרוני. בגישה, תכנית וה מאגר מידע. אפילו ביישום Visual Basic עצמאי של Windows, יהיה לנו תכנית ו טופס.
(הערה: קיימת מגמה בתכנות להתייחס לכל המיכלים ברמה הגבוהה כאל "מסמך". זה במיוחד המקרה כאשר XML... עוד טכנולוגיה מתקדמת... נמצא בשימוש. אל תתנו לזה לבלבל אתכם. למרות שמדובר בחוסר דיוק קל, אתה יכול לחשוב על "מסמכים" שהם בערך אותו דבר כמו "קבצים".)
יש... אמממממ... בערך שלוש דרכים עיקריות להפעלת מאקרו ה- VBA שלך.
- אתה יכול להריץ אותו ממסמך Word.
(הערה: שתי קטגוריות משנה הן לבחור מקררו מתפריט כלים או פשוט הקש Alt-F8. אם הקצית את המאקרו לסרגל הכלים או לקיצור המקשים, זו דרך אחת נוספת.)) - אתה יכול להריץ אותו מעורך באמצעות סמל הפעלה או תפריט הפעלה.
- אתה יכול לעבור צעד אחד בתוכנית במצב באגים.
עליכם לנסות כל אחת מהשיטות הללו רק כדי להרגיש בנוח עם ממשק ה- Word / VBA. כשתסיים, יהיה לך מסמך שלם מלא חוזרים על "שלום עולם!"
הפעלת התוכנית מ- Word היא קלה למדי לביצוע. פשוט בחר במאקרו לאחר לחיצה על מאקרו תחת הסמל נוף כרטיסייה.
כדי להריץ אותו מהעורך, פתח תחילה את עורך Visual Basic ואז לחץ על סמל הפעלה או בחר הפעל מהתפריט. להלן ההבדל בין המסמך לתוכנית עלול להפוך לבלבל עבור חלקם. אם יש לך מסמך ממוזער או שאולי סידור החלונות שלך כך שהעורך מכסה אותו, תוכל ללחוץ שוב ושוב על סמל ההפעלה ונראה ששום דבר לא קורה. אבל התוכנית פועלת! עבור למסמך שוב וראה.
דריכה בודדת בתכנית היא ככל הנראה הטכניקה הטובה ביותר לפיתרון בעיות. זה נעשה גם מעורך Visual Basic. כדי לנסות זאת, לחץ על F8 או בחר להיכנס אל מ ה לנפות תפריט. ההצהרה הראשונה בתוכנית, ה- תת הצהרה, מודגשת. לחיצה על F8 מבצעת את הצהרות התוכנית בזה אחר זה עד לסיום התוכנית. אתה יכול לראות בדיוק מתי הטקסט מתווסף למסמך בדרך זו.
ישנן הרבה יותר טכניקות ניפוי באגים מעודנות כמו 'נקודות שבר', בחינת אובייקטים בתוכנית ב'חלון המיידי 'והשימוש ב'חלון הצפייה'. אך לעת עתה, פשוט להיות מודע לכך שזו טכניקת ניפוי עיקרית בה תשתמש כמתכנת.
תכנות מונחה עצמים
השיעור הבא בכיתה עוסק תכנות מונחה עצמים.
"ווהאאטטט!" (אני שומע אותך גונחת) "אני רק רוצה לכתוב תוכניות. לא נרשמתי להיות מדען מחשבים! "
אל פחד! יש שתי סיבות לכך שזה מהלך נהדר.
ראשית, בסביבת התכנות של ימינו אתה פשוט לא יכול להיות מתכנת אפקטיבי בלי להבין מושגי תכנות מוכווני עצמים. אפילו התוכנית הפשוטה ביותר "שורה של עולם" בשורה אחת, כללה אובייקט, שיטה ורכוש. לדעתי, אי הבנת אובייקטים היא הבעיה היחידה הגדולה ביותר שמתחילה לתכנתים. אז אנחנו הולכים להתעמת עם החיה ממש מקדימה!
שנית, אנו הולכים לעשות זאת ללא כאבים ככל האפשר. אנחנו לא מתכוונים לבלבל אתכם עם המון ז'רגון למדעי המחשב.
אבל מיד אחר כך, אנו הולכים לקפוץ בחזרה לכתיבת קוד תכנות עם שיעור בו אנו מפתחים מאקרו VBA שתוכלו כנראה להשתמש בו! אנו משכללים את התוכנית הזו קצת יותר בשיעור הבא ומסיימים אתכם על ידי הצגתכם כיצד להתחיל להשתמש ב- VBA עם מספר יישומים בבת אחת.