VBA GetOpenFilename | كيفية استخدام طريقة GetOpenFilename في VBA؟

GetOpenFilename هي طريقة هي أيضًا سمة من سمات FSO ، وتستخدم هذه الطريقة في VBA للعثور على ملف معين باسم ملف وتحديده ، والعامل المهم في هذه الطريقة هو مسار اسم الملف المقدم لفتحه ، ونحن يمكن إما تمرير مسار اسم الملف في الوظيفة أو يمكننا أن نطلب من المستخدم تقديم مسار ملف لتحديده.

تطبيق Excel VBA

هناك حالات نحتاج فيها إلى الوصول إلى اسم الملف المحدد ويمكن أن يكون ذلك ممكنًا باستخدام ترميز VBA. من أجل الوصول إلى الملف ، نحتاج إلى ذكر مسار المجلد أيضًا واسم الملف مع امتداد الملف الخاص به. من أجل الحصول على اسم الملف ، سيعطي العديد من المبرمجين مربع إدخال VBA كخيارات لإدخال مسار الملف واسم الملف. لكن هذا ليس خيارًا جيدًا للتدرب عليه ، لأنه عندما تقدم مربع إدخال أمام المستخدم ، فإنه لا يتذكر دائمًا مسار الملف ، والشرطات المائلة العكسية لفصل مجلد واحد عن مجلد آخر ، وأسماء الملفات ، وامتداد الملفات . هذا يجعل المدخلات التي قدمها المستخدم messier وفي النهاية ، سيتم إفساد كل شيء حتى إذا كان هناك خطأ صغير في المسافة. أفضل طريقة هي استبدال مربع الإدخال بأسلوب VBA المسمى "GetOpenFileName".

في هذه المقالة ، سنوضح لك كيفية استخدام VBA GetOpenFileName للحصول على اسم الملف دون أي أخطاء.

ماذا يفعل GetOpenFilename في Excel VBA؟

يسمح VBA “GetOpenFileName” للمستخدم بتحديد الملف من الكمبيوتر الذي نعمل عليه دون فتح الملف.

بمساعدة طريقة "GetOpenFileName" ، يمكننا بالفعل تقديم مربع حوار أمام المستخدم لتحديد الملف في المجلد المطلوب. سيقوم "GetOpenFileName" بنسخ موقع الملف مع اسم الملف وامتداد الملف.

بناء جملة GetOpenFilename في Excel VBA

ألق نظرة على صيغة طريقة "GetOpenFilename".

  • مرشح الملفات: في هذه الوسيطة ، يمكننا تحديد نوع الملفات التي سيتم عرضها لتحديدها. على سبيل المثال ، إذا ذكرت "ملفات Excel ، *. xlsx" ، فسيتم عرض ملفات Excel المحفوظة بامتداد Excel "xlsx" فقط ، ولن يتم عرض أي ملفات أخرى. إذا تجاهلت جميع أنواع الملفات سيتم عرضها.
  • فهرس عامل التصفية: باستخدام هذا ، نقيد المستخدم بتحديد نوع الملف. يمكننا تحديد عدد المرشحات لتكون مرئية تحت File Filter.
  • العنوان: يعرض عنوان مربع حوار تحديد الملف.
  • نص الزر: هذا فقط لنظام التشغيل Macintosh.
  • التحديد المتعدد: صحيح إذا كنت تريد تحديد ملفات متعددة أو خطأ آخر. القيمة الافتراضية هي كاذبة.

مثال على GetOpenFilename في Excel VBA

فيما يلي أمثلة لتطبيق VBA.GetOpenFilename.

يمكنك تنزيل VBA GetOpenFilename Excel Template هنا - VBA GetOpenFilename Excel Template

دعنا نكتب رمزًا للحصول على اسم الملف وعنوان المسار.

الخطوة 1: ابدأ الإجراء الفرعي.

رمز:

 Sub GetFile_Example1 () End Sub 

الخطوة 2: قم بتعريف متغير على أنه سلسلة.

رمز:

 Sub GetFile_Example1 () Dim FileName كسلسلة End Sub 

الخطوة 3: بالنسبة لهذا المتغير ، سنقوم بتعيين GetOpenFileName.

رمز:

 Sub GetFile_Example1 () Dim FileName كسلسلة FileName = Application.GetOpenFilename () End Sub 

اعتبارًا من الآن ، تجاهلت جميع المعلمات.

الخطوة 4: الآن اعرض نتيجة المتغير في مربع الرسالة.

رمز:

 Sub GetFile_Example1 () Dim FileName كسلسلة FileName = Application.GetOpenFilename () MsgBox FileName End Sub 

الآن قم بتشغيل الكود من خلال مفتاح اختصار Excel F5 أو يدويًا ، سيعرض مربع الحوار أدناه لتحديد الملف.

سأختار أي ملف وانقر على موافق.

بمجرد تحديد الملف ، حصلت على مربع رسالة في VBA مثل هذا. يعرض مسار المجلد الكامل واسم ملف Excel المحدد مع امتداد الملف.

كما نرى في الصورة أعلاه ، يمكننا رؤية جميع أنواع الملفات. الآن سأضيف المعلمة الأولى ، أي "عامل تصفية الملفات" كـ "ملفات Excel ، *. xlsx".

رمز:

 Sub GetFile_Example1 () Dim FileName كسلسلة FileName = Application.GetOpenFilename (FileFilter: = "ملفات Excel ، *. xlsx") MsgBox FileName End Sub 

الآن إذا قمت بتشغيل هذا الرمز باستخدام مفتاح F5 أو يدويًا ، فسوف أرى ملفات Excel فقط بامتداد “xlsx”.

مثل هذا ، يمكننا استخدام طريقة "VBA Application.GetOpenFileName" للحصول على مسار المجلد مع اسم الملف وامتداد الملف.


$config[zx-auto] not found$config[zx-overlay] not found