פרסומת
האם לא יהיה נחמד היכולת פשוט לפתוח גיליון אלקטרוני של Excel או מסמך Word, וללא צורך לעשות דבר ב בסך הכל, הנתונים נקראים ישירות מתוך טקסט או קובץ נתונים של CSV וטוענים ישירות לתרשים המוטמע בגיליון האלקטרוני או ב- Word מסמך? זוהי סוג של אוטומציה באמצעות מוצרי Office, מכיוון שאם ניתן לבצע אוטומציה של תרשים הנתונים ב- Office, פשוט חשוב על האפשרויות. אתה יכול לטעון נתונים באופן אוטומטי בתרשים עבור דוח שאתה מרכיב עבור הבוס שלך - אין צורך בהזנת נתונים. או שתוכל לטעון נתונים בתרשים ישירות להודעת דוא"ל ב- Outlook.
הטכניקה להשיג זאת כוללת התקנת תוסף רכיבי האינטרנט של Office. יתר על כן, אתה רק צריך לקבוע תצורה של כמה דברים בתוך יישום Office שבהם ברצונך להשתמש כדי לייבא את הנתונים, ואתה מוכן להתחיל לבצע אוטומציה של עבודת הדיווח שלך. כיסיתי כמה מהאלמנטים בהם אנו הולכים להשתמש במאמר זה קודם מאמרים ב- VBA איך אתה יכול ליצור אפליקציה משלך באמצעות VBAרוצה לדעת כיצד ליצור אפליקציית VBA משלך לפיתרון בעיות? השתמש בטיפים אלה לבניית תוכנת VBA משלך. קרא עוד כאן ב- MakeUseOf. כמה מאלו כללו העברת נתונים בין
יישומים עם הלוח העבירו כל מידע בין יישומי VBA באמצעות הלוחאחד החלקים המתסכלים ביותר בעבודה עם VBA ביישומים ספציפיים הוא שלא תמיד קל לגרום לשני אפליקציות "לדבר" זה עם זה. אתה יכול לנסות לבצע עסקאות מהירות מאוד ... קרא עוד , ייצוא משימות Outlook ל- Excel כיצד לייצא את משימות Outlook שלך ל- Excel באמצעות VBAבין אם אתם אוהדים של מיקרוסופט ובין אם לאו, דבר טוב שאפשר לומר לפחות על מוצרי MS Office הוא כמה קל לשלב כל אחד מהם אחד עם השני ... קרא עוד ושולח דוא"ל מ- Excel כיצד לשלוח דוא"ל מגיליון אלקטרוני של Excel באמצעות סקריפטים של VBAתבנית הקוד שלנו תעזור לך להגדיר דוא"ל אוטומטיים מתוך Excel באמצעות תסריטים של שיתוף פעולה של נתונים (CDO) ו- VBA. קרא עוד תסריט.מה שאני הולך להראות לך הוא כיצד לשלב רכיבי אינטרנט של Office עם סקריפט קבצי טקסט ליצירת זרם נתונים חלק ואוטומטי מקובץ טקסט שטוח במחשבך למוצר Office שלך (במקרה שלנו אקסל). אתה יכול להשתמש באותה טכניקה זו - עם כמה שינויים קטנים - ב- Word, Outlook או אפילו PowerPoint. כל מוצר של Office (או כל מוצר אחר לצורך העניין) שיש לו back-end VBA למפתחים, יאפשר לכם להשתמש בטכניקה זו.
ייבא וצור גרף מקבצי נתונים
לפני שתוכל ליצור גרף מקבצי נתונים, תצטרך להפעיל תחילה כמה דברים. בדוגמה זו, אני הולך להראות לך כיצד לאפשר תכונות אלה ב- Excel, אך התהליך כמעט זהה בכל מוצר אחר של Office.
ראשית, לפני שתוכל לבצע פיתוח VBA, עליך לאפשר את כרטיסיית המפתחים בסרגל הכלים (אם עדיין לא עשית זאת). לשם כך פשוט היכנס לתפריט אפשרויות, לחץ על "התאמה אישית של סרט" והפעל את הכרטיסייה "מפתח".
בחזרה לדוד, כעת תראה "מפתחים" מופיעים בתפריטים. לחץ עליו ולחץ על "מצב עיצוב". לאחר מכן לחץ על "הצג קוד" כדי לראות את עורך ה- VBA.
בתוך העורך הוא המקום שתצטרך לאפשר את ההפניות הדרושות לך לקוד שאני הולך לתת לך לעבוד. וודא שהתקנת את התוסף של רכיבי האינטרנט של Office לפני שתעשה זאת, אחרת אובייקט ה- Chart של Microsoft לא יהיה זמין.
לחץ על כלים ואז על הפניות ותראה רשימה של כל הפניות הזמינות במערכת שלך. אם אינך יודע מה אלה - אזכורים הם בעצם ספריות של קוד ואובייקטים שאתה יכול למשוך לפרויקט שלך. אלה מאפשרים לכם לעשות כמה דברים ממש מגניבים, תלוי איזו הפניה אתם מאפשרים. אם התקנת במערכתך רכיבי רשת של Office במערכת, תצטרך להוסיף אותה כספריה חדשה, לכן לחץ על כפתור העיון כדי למצוא את קובץ ה- DLL הנכון.
אם התקנת רכיבי רשת של Office, קובץ ה- DLL נקרא OWC11.dll והוא מאוחסן ב c: \ קבצי תוכנית \ קבצים נפוצים \ microsoft משותף \ רכיבי אינטרנט \ 11 \
לחץ על תיבת הסימון לעיון "Microsoft Office Web Components 11.0", ואל תשכח לעשות זאת בחר "Microsoft Scripting Runtime" גם כן, אשר ייתן לך גישה לקרוא או לכתוב מנתונים קבצים.
עכשיו לאחר שהוספת את ההפניה, הגיע הזמן להוסיף את התרשים בפועל לגיליון שלך. ב- Excel אתה יכול להוסיף פקדים על ידי לחיצה על "הכנס" בתפריט המפתח ולחיצה על סמל הכלים הקטן בפינה תחת "פקדי ActiveX".
גלול אל "Microsoft Office Chart 11.0" ולחץ על אישור.
סוף סוף אנו מתחילים לעסוק. כך נראה תרשים רכיב האינטרנט של MS משובץ בגליון אלקטרוני. זה ייראה מוטבע במסמך Word או כל דבר אחר.
אז במקרה של Excel, אני רוצה שהתרשים יטען מייד נתונים מקובץ הנתונים עם פתיחת קובץ חוברת העבודה. לשם כך אתה נכנס לעורך הקוד על ידי לחיצה על "הצג קוד" בתפריט המפתח ולחץ פעמיים על חוברת העבודה כדי לראות את קוד חוברת העבודה. שנה את התפריט הנפתח הימני ל"פתוח ". זהו הסקריפט שיפעל כאשר פתיחת קובץ חוברת העבודה לראשונה.
כדי לטעון את התרשים עם נתונים מקוד, התרשים עצמו זקוק לשם. חזור לגיליון האלקטרוני, לחץ באמצעות לחצן העכבר הימני על התרשים ובחר מאפיינים. תראה את השדה "שם" עם משהו כמו "ChartSpace1". אתה יכול לשנות את זה לכל דבר. קראתי לשלי "MyChart".
כמו כן, רק שתדעו איך קובץ הנתונים - שלי הוא קובץ טקסט מלא בערכי נתונים בפורמט מופרד בפסיקים. קובץ זה יכול להיות כל דבר - נתוני מעבדה המיוצאים מחיישנים, מידע פיננסי שהוקלד לקובץ באופן ידני על ידי מתמחים, או כל דבר אחר בכלל. אתה קורא את הקובץ עם הקוד שלך, כך שלא משנה איך נראים הנתונים, כל עוד אתה יודע איך תיראה כל שורה כאשר התוכנית שלך קוראת אותם.
אז, עכשיו בשביל החלק הכיף. אני הולך להראות לך את הקוד בקטעים קטנים כדי שזה לא יהיה מכריע, ולהסביר מה הקוד עושה. בחלקו העליון של הקוד תחילה לקרוא את כל הערכים מקובץ הטקסט ולאחסן אותם בשני מערכים, אחד עבור x משתנים (xVar) ואחד עבור משתני y (yVar).
Dim fso כמו FileSystemObject חדש. עמום fnum. עמום את MyFile כמחרוזת. אפלולית StrDataLine כמחרוזת. Dim xVar () כווריאנט. עמום yVar () כווריאנט. עמק intNumOfLines כשלם שלם MyFile = "c: \ קבצים \ MyData.txt" fnum = FreeFile () פתח את MyFile לקלט כמס '1. intNumOfLines = 0. עשה תוך כדי EOF (1) intNumOfLines = intNumOfLines + קלט מס '1, קלט strDataLine מס' 1, strDataLine. לולאה. סגור ReDim xVar מס '1 (intNumOfLines) ReDim yVar (intNumOfLines) פתח את MyFile לקלט כמס '1. intNumOfLines = 0. עשה תוך כדי EOF (1) קלט מס '1, xVar (intNumOfLines) קלט מספר 1, yVar (intNumOfLines) intNumOfLines = intNumOfLines + 1. לולאה. סגור מס '1
קוד זה בעצם עובר על קובץ הנתונים פעמיים - הפעם הראשונה שממדים את המערכים כך הם האורך המדויק הדרוש לאחסון הנתונים, ואז פעם שנייה לקרוא את הנתונים מערכים. אם אינך יודע מהו מערך - זהו משתנה או אזור אחסון שיכיל רשימה ארוכה של ערכים אליהם תוכל לגשת באמצעות הסדר שהערך אוחסן במערך. השליש הטעון יהיה (3), למשל.
כעת, לאחר שיש לך שני מערכים אלה עמוסים בכל הערכים מקובץ הנתונים שלך, אתה מוכן לטעון את הערכים האלה בתרשים שכבר הטמנת. הנה הקוד שעושה זאת.
עם Sheet1.MyChart .Clear .Refresh Set oChart = .Charts. הוסף oChart. HasTitle = oChart אמיתי. כותרת. כיתוב = "ערכי הנתונים שלי" oChart. פנים. צבע = "כחול" oChart. PlotArea. פנים. צבע = "לבן" הגדר oSeries = oChart. סדרת איסוף. הוסף עם oSeries .Caption = "ערכי הנתונים שלי". SetData chDimC קטגוריות, chDataLiteral, xVar. SetData chDimValues, chDataLiteral, yVar. Line. צבע = "כחול". קו. DashStyle = chLineDash .Line. משקל = 2. סוג = chChartTypeLine סוף עם oChart. HasLegend = נכון. oChart. אגדה. מיקום = chLegendPositionBottom. סוף עם
זהו "גיליון1.MyChart" שמחבר את הקוד לתרשים שהטמעת בפועל. זה מבוסס על מה שקראת לזה. זה יהיה המקרה כשאתה מטמיע אותו ב- Word, Powerpoint או בכל מוצר אחר של Office. לא תתייחס לזה באמצעות "גיליון 1", אלא במקום זאת כל רכיב שיש בתרשים במקרה כזה, כגון "מסמך 1" ב- Word למשל.
הקוד שלמעלה מגדיר את התיוג והצביעה של הגרף ואז טוען את הערכים בשיטת ".setdata" עבור ערכי x ו- y של מערך הנתונים הדו-ממדי. לאחר סיום הקוד לעיל, הגרף הבא יופיע.
נתונים אלה נמצאים ישר מקובץ הטקסט. החיסרון היחיד כאן הוא שקבצי הנתונים יצטרכו להיות דו מימדיים רק אם תרצו להשתמש בקוד שלמעלה. אתה יכול להוסיף ערכים נוספים למערך הנתונים, אך עליך לשנות את הקוד למעלה בכדי לקרוא בערך השלישי בכל פעם דרך הלולאה, ואז לשכפל את "SeriesCollection. הקטע הוסף "כדי ליצור סדרה נוספת ואז להוסיף אותה לתרשים באותו אופן.
זה אולי נראה מורכב רק כשקוראים את הקוד שלמעלה, אבל ברגע שעשיתם אחד כזה, זו חתיכת עוגה לשנות אותה לכל צרכיכם. אתה יכול להשתמש באותה תרשים וקוד דומה כדי ליצור תרשים עמודות, תרשים פיזור או כל סוג תרשים אחר שתרצה באמצעות אובייקט זה. זה תכליתי וגמיש - וזה כלי רב עוצמה בארסנל שלך אם אתה חובב אוטומציה לעבודה על מנת לשפר את הפרודוקטיביות.
השתעשע עם הקוד למעלה ובדוק אם אתה יכול לטעון נתונים אוטומטית ליישומים שלך. אילו שימושים יצירתיים תוכלו לחשוב לגבי אוטומציה מסוג זה? שתף את המחשבות והמשוב שלך בקטע התגובות למטה!
לראיין תואר ראשון בהנדסת חשמל. הוא עבד 13 שנה בהנדסת אוטומציה, 5 שנים בתחום ה- IT, וכעת הוא מהנדס אפליקציות. כעורך מנהל לשעבר של MakeUseOf, הוא דיבר בכנסים ארציים להמחשת נתונים והופיע בטלוויזיה וברדיו הארציים.