@u88 האם יש לך ידע בVBA? (כי בלי זה אין מה להתחיל...)
בכל זאת כתבתי לך מדריך מקוצר ע"פ הקובץ לעיל:
אז קודם כל מה זה UserForm?
UserForm הוא טופס של אופיס המאפשר יצירת אינטראקציה עם המשתמש.
באמצעות UserForm המשתמש יכול לסמן אופציות, להכניס נתונים, ועוד...
כיצד מציגים אותו למשתמש?
באם נרצה להציג את הUserForm לפני המשתמש, נכניס את הקוד הבא:
UserForm.show
במקום המילים "UserForm" נכניס את השם של הטופס, בקובץ שהובא לעיל הוא נקרא: "frmDuplicatesTool" וזהו בעצם הקוד הראשון שנמצא בModule הרגיל של הקובץ:
Sub ShowDuplicateTool()
frmDuplicatesTool.Show
End Sub
איך לשנות שם לUserForm או לפקדים שלו?
על מנת לשנות את השם של הטופס נבחר אותו בחלון של עורך הVBA נלחץ על F4 (יש לשים לב שמקש הFN לחוץ), ייפתח לנו חלון בצד, בשורה הראשונה ניתן לשנות את שם הטופס.
*באם נרצה להחליף שם לאחד הפקדים נבחר אותו, ונשנה את שמו באותה צורה.
יצירת הפקדים:
בטופס שמובא בקובץ הנ"ל יש לנו 4 פקדים, 3 פקדים מציגים אופציות שונות (מחיקה/סימון באדום/הצגת דו"ח) והפקד הרביעי מריץ את הקוד.
כמובן שקודם כל נצטרך להוסיף את הפקדים, באמצעות גרירה של פקדים מחלונית הכלים:
[image: 1753103120282-%D7%A6%D7%99%D7%9C%D7%95%D7%9D-%D7%9E%D7%A1%D7%9A-2025-07-21-160429.png]
אנו צריכים לשנות גם את שמות הפקדים, שלושת הפקדים של תיבות הסימון נקראים: "chkHighlight", "chkDelete", "chkExport" (איך מחליפים? כבר אמרנו...)
עכשיו נשאר לנו רק את הפקד האחרון, הפקד הזה מריץ את הקוד
נשנה את השם שלו ל"btnRun"
כיצד להריץ קודים באמצעות טופס UserForm?
*לאחמ"כ נלחץ על הפקד לחיצה כפולה, בחלון שנפתח נוסיף את הקוד הבא:
Private Sub btnRun_Click()
Me.Hide
RunDuplicateTool chkHighlight.Value, chkDelete.Value, chkExport.Value
Unload Me
End Sub
הקוד הזה מופעל בעת לחיצה על הפקד, ניתן לראות זאת משמו של הקוד שמשלב את שם הפקד בתוספת המילה "Click", והוא מבצע את הפעולות הבאות:
מסתיר את הטופס במהלך ריצת הקוד
מפעיל את הקוד שנמצא בתוך הModule הרגיל המאקרו נקרא: "RunDuplicateTool"
המאקרו מקבל 3 ערכים בתחילת הריצה, המופרדים באמצעות פסיקים, שהם בעצם הערכים של תיבות הסימון (השם של תיבת הסימון + ".value" = ערך)
כעת המאקרו ירוץ, באם נסתכל על השורה הראשונה של המאקרו שאנו מריצים (שכזכור נמצא בModule הרגיל):
Sub RunDuplicateTool(highlightOnly As Boolean, doDelete As Boolean, exportReport As Boolean)
* נראה שבתוך הסוגריים של הקוד מופיעים משתנים שונים, המשתנים הללו מקבלים את הערכים שלהם בתחילת ריצת הקוד, כפי שהסברנו קודם.
5. השורה האחרונה בקוד של הפקד דלעיל סוגרת את הטופס.
סיכום:
אם קיבלתם קוד מAI ואתם רוצים להוסיף אותו לקובץ וורד, תבצעו את הפעולות הבאות:
הוספה של הקודים לModule הרגיל.
יצירת טופס UserForm עם פקדים.
שינוי השמות של הטופס והפקדים.
הוספת הקוד של הטופס, באמצעות לחיצה כפולה על אחד הפקדים (או הטופס עצמו) והחלפת הקוד, בקוד שAI הביא לכם
כמה פשוט.......
Spoiler
הכל כמובן בקיצור, המדריך של @pcinfogmach מפורט בהרבה...