לכל אחד יש לקוחות מוזרים. גם לי.

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

ואז צלצל הטלפון. על הקו היה בחור שביקש קוד VBA להעתקה של טבלה מאקסל לוורד.

הוא לא רצה לחכות אפילו רגע, הוא היה חייב את זה מייד

בסופו של דבר מרוב לחץ, אני הסכמתי, ופיניתי כמה דקות לכתוב את זה ולשלוח לו .

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

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

כמה הערות לפני כן :

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

2. הקוד מניח שקיים קובץ “תבנית” של Word בתוך כונן C  בתיקיה הראשית, - הקוד פותח קובץ Word חדש, המבוסס על התבנית ומעתיק אליו את הטבלה מתוך Excel.

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

4. למי שמעדיף כפית כסף לפה - צירפתי בתחתית העמוד את 2 הקבצים.

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

אז אחרי כל ההערות האלו - קדימה לעבודה.

לפני הכל - נפתח קובץ Word חדש, נעתיק אליו את השורה הבאה

Write here the Header you want to Search in the Word file

ונשמור אותו בכונן C בתיקיה הראשית בשם TempExample.dotx

שימו לב! כדי לשמור קובץ בתור קובץ תבנית, ב-WORD, עושים זאת כך : קובץ > שמור בשם > בוחרים ב- Other Formats ובחלון שנפתח , מחפשים ובוחרים את השורה שבה הסיומת בתוך הסוגרים היא dotx .

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

ולשלב הבא - 

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

דבר שני - נפתח את עורך ה-VBA ונפתח בו מודול חדש.

(מקש ימני על שם הקובץ הנוכחי שמופיע בעץ ההירככי מצד שמאל, ו-INSERT ולאחר מכן בוחרים Module)

השלב הבא בתור הוא :

להגדיר Refference לתוכנת Word בעורך ה-VBA.

למי שזה נשמע לו כמו סינית , עושים זאת כך :

בתוך עורך ה-VBA (אפשר עם קונטרול + F11 ) לוחצים על תפריט Tools > ואז על Refferences  

לאחר מכן - במסך שנפתח, מחפשים  את השורה של Microsoft Word ומסמנים אותה ב-V (אם אתם עובדים עם גירסת וורד 2007 , זה יקרא 12.0 , לגירסת וורד 2010 - זה יקרא 14.00 וכן הלאה).

לבסוף נלחץ על OK וסיימנו את השלב הזה.

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

מה בעצם עשינו כאן ?

כדי שנוכל להשתמש בפקודות המאקרו (=VBA) ששייכות ל-WORD מתוך העורך של Excel, צריך לבצע את הפעולה הזו - כלומר בעצם יצרנו קשר בין עורך המאקרו, ובין תוכנת Word וכעת - הוא יודע “להבין” גם פקודות מאקרו של Word.

השלב הבא הוא - להעתיק ולהדביק את הקוד  הבא : 

Sub CopyTableFromExcelToNewWord() 'Before You run this Macro - Please check that you Have 'a Template Word File named : TempExample.dotx 'That is located in C: 'At the End - You will get a new Word file 'Named : YourFileName.docx 'located in C: Dim MajorHeader As String MajorHeader = Range("A1").Value Range("A3:E8").Select Selection.Copy Dim wrdApp As Word.Application Dim wrdDoc As Word.Document Dim i As Integer Set wrdApp = CreateObject("Word.Application") wrdApp.Visible = True Set wrdDoc = wrdApp.Documents.Add("C:TempExample.dotx") wrdDoc.Application.Selection.Find.ClearFormatting With wrdDoc.Application.Selection.Find     .Text = "Write here the Header you want to Search in the Word file"     .Replacement.Text = ""     .Forward = True     .Wrap = wdFindContinue     .Format = False     .MatchCase = False     .MatchWholeWord = False     .MatchKashida = False     .MatchDiacritics = False     .MatchAlefHamza = False     .MatchControl = False     .MatchWildcards = False     .MatchSoundsLike = False     .MatchAllWordForms = False End With wrdDoc.Application.Selection.Find.Execute wrdDoc.Application.Selection.EndKey Unit:=wdLine wrdDoc.Application.Selection.MoveDown Unit:=wdLine, Count:=1 wrdDoc.Application.Selection.TypeParagraph wrdDoc.Application.Selection.TypeText (MajorHeader) wrdDoc.Application.Selection.TypeParagraph wrdDoc.Application.Selection.PasteAndFormat (wdPasteDefault) With wrdDoc 'Now the macro save the file     .SaveAs ("C:YourFileName.docx")     .Close End With 'Now the Macro close Word Program wrdApp.Quit Set wrdDoc = Nothing Set wrdApp = Nothing End Sub  

וזהו - לסיום  - פשוט תשמרו את הקובץ, ותפעילו את המאקרו שנקרא CopyTableFromExcelToNewWord.

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

 ולמי שממש מעדיף - הנה הקבצים

רק תזכרו לשמור אותם בתיקיה הראשית של כונן C

קישור להורדת הקבצים

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