VBA GetOpenFilename | כיצד להשתמש בשיטת GetOpenFilename ב- VBA?

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

יישום VBA של Excel.GetOpenFilename

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

במאמר זה נראה לך כיצד להשתמש ב- VBA GetOpenFileName כדי לקבל את שם הקובץ ללא שגיאות.

מה עושה GetOpenFilename ב- Excel VBA?

VBA "GetOpenFileName" מאפשר למשתמש לבחור את הקובץ מהמחשב עליו אנו עובדים ללא פתיחת הקובץ.

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

תחביר של GetOpenFilename ב- Excel VBA

התבונן בתחביר של שיטת "GetOpenFilename".

  • מסנן קבצים: בטיעון זה, אנו יכולים לציין איזה סוג קבצים יוצגו לבחור. לדוגמה, אם אתה מזכיר "קבצי Excel, *. Xlsx" הוא יציג רק קבצי Excel שנשמרו עם סיומת ה- excel "xlsx", שום קבצים אחרים לא יוצגו. אם אתה מתעלם יוצגו כל מיני קבצים.
  • אינדקס סינון: בכך אנו מגבילים את המשתמש לבחור את סוג הקובץ. אנו יכולים לציין את מספר המסננים שייראו תחת סינון קבצים.
  • כותרת: הוא מראה את כותרת תיבת הדו-שיח של הקובץ.
  • טקסט לחצן: זה מיועד רק למקינטוש.
  • רב-בחירה: TRUE אם ברצונך לבחור מספר קבצים או אחרת FALSE. ערך ברירת המחדל הוא FALSE.

דוגמה ל- GetOpenFilename ב- Excel VBA

להלן הדוגמאות של VBA Application.GetOpenFilename.

ניתן להוריד תבנית Excel VBA GetOpenFilename כאן - תבנית VBA GetOpenFilename Excel

בואו נכתוב קוד לקבלת שם הקובץ וכתובת הנתיב.

שלב 1: התחל את תת-הפעולה.

קוד:

 תת GetFile_Example1 () סוף משנה 

שלב 2: הכריז על משתנה כמחרוזת.

קוד:

 תת GetFile_Example1 () עמעום שם קובץ כמשנה סוף מחרוזת 

שלב 3: עבור משתנה זה, נקצה את GetOpenFileName.

קוד:

 תת GetFile_Example1 () עמעום שם קובץ כמחרוזת קובץ = יישום. GetOpenFilename () סוף משנה 

נכון לעכשיו התעלמתי מכל הפרמטרים.

שלב 4: כעת הציגו את תוצאת המשתנה בתיבת ההודעה.

קוד:

 תת GetFile_Example1 () עמעום שם קובץ כמחרוזת קובץ שם = יישום. GetOpenFilename () MsgBox שם קובץ משנה משנה 

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

אני אבחר כל קובץ אחד ולחץ על אישור.

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

כפי שניתן לראות בתמונה לעיל יכולנו לראות כל מיני קבצים. עכשיו אוסיף את הפרמטר הראשון כלומר מסנן הקבצים כ- "Excel Files, *. Xlsx".

קוד:

 תת GetFile_Example1 () עמעום שם קובץ כמחרוזת קובץ = יישום. GetOpenFilename (FileFilter: = "קבצי Excel, *. Xlsx") MsgBox שם משנה סוף 

כעת אם אני מריץ קוד זה באמצעות מקש F5 או באופן ידני, אראה רק קבצי Excel עם הסיומת "xlsx".

כמו זה, אנו יכולים להשתמש בשיטת "VBA Application.GetOpenFileName" כדי לקבל את נתיב התיקיה יחד עם שם הקובץ והסיומת של הקובץ.