نحوه استفاده از تابع VBA DIR در اکسل (7 مثال عملی)

  • این را به اشتراک بگذارید
Hugh West

عملکرد DIR در VBA عمدتاً دایرکتوری یا فایل‌های یک پوشه معین را به شما نشان می‌دهد. همچنین می تواند اولین فایل را با این تابع برگرداند. این تابع کاربردهای زیادی برای دریافت فایل ها و پوشه های خاص دارد. فقط کافی است مسیر فایل را در نام مسیر کد VBA وارد کنید. ممکن است استفاده از کدهای VBA DIR دشوارتر باشد. نگران نباشید، در این مقاله قصد داریم چند نمونه را برای تجسم بهتر استفاده از تابع VBA DIR به شما نشان دهیم. امیدوارم بعد از خواندن مقاله بتوانید از این تابع استفاده کنید. بنابراین، بیایید شروع کنیم.

دانلود کتاب تمرین تمرین

کتاب تمرین زیر را دانلود کنید. این به شما کمک می کند موضوع را بهتر درک کنید.

DIR Function.xlsm

مقدمه ای بر تابع DIR

خلاصه:

تابع VBA DIR نام یک فایل یا دایرکتوری را از یک مسیر پوشه معین برمی گرداند. به طور معمول، اولین فایل را برمی گرداند.

Syntax:

Dir [ (pathname, [ attributes ] ) ]

توضیح آرگومان ها:

استدلال ضروری/اختیاری توضیح
PathName اختیاری Path برای دسترسی و مشخص کردن فایل
ویژگی ها اختیاری عبارت ثابت یا عددی ویژگی های فایل های منطبق را مشخص می کند

چند مورد از قبل وجود داردویژگی های تعریف شده، آنها عبارتند از-

نام ویژگی توضیح
vbNormal فایل ها بدون ویژگی های خاص
vbReadOnly فایل های فقط خواندنی بدون ویژگی
vbHidden Hidden فایل‌های بدون ویژگی
vbSystem فایل‌های سیستم بدون ویژگی
vbVolume Volume label
vbDirectory دایرکتوری ها یا پوشه های بدون ویژگی
vbAlias نام فایل مشخص شده یک نام مستعار است

7 مثال از استفاده از تابع VBA DIR در اکسل

از توضیحات، ممکن است متوجه شده باشید که تابع VBA DIR نام فایل از نام مسیر ارائه شده. بیایید آن را با مثال درک کنیم. در اینجا ما یک دایرکتوری Exceldemy_Folder ایجاد کرده ایم تا نمونه های مختلف را به شما نشان دهیم. پوشه ها و فایل های کوچک مختلفی در این پوشه وجود دارد.

1. نام فایل را از مسیر پیدا کنید

در پوشه ما، می توانیم یک فایل خاص را با مسیر نام فایل را اعلام کنید.

پس از کپی کردن مسیر فایل، باید کد را اجرا کنید.

به همین دلیل، به تب Developer >> Visual Basic را انتخاب کنید. سپس به برگه درج بروید >> Module را انتخاب کنید. در کادر محاوره ای General ، کد را می نویسیم.

از آنجایی که دستور کار ما یافتن <1 است>نام فایل از مسیر نام، ما را تنظیم می کنیمنام مسیر کامل (از ریشه تا فایل) و کد ما خواهد بود

9948

در اینجا در کد ما، نام مسیر را به صورت E:\Exceldemy\Sales_of_January تنظیم کرده‌ایم. xlsx

تجزیه کد:

  • در ابتدا، یک متغیر رشته ای به نام FN<اعلام کردیم. 2>. و خروجی تابع Dir در این متغیر ذخیره شد.
  • بعد، تابع Dir نام فایل را پیدا کرده و از مسیر ارائه شده برمی گرداند.
  • سپس MsgBox خروجی را از طریق جعبه پیام تنظیم می کند. MsgBox با استفاده از یک جعبه پیام خروجی را برمی‌گرداند.
  • سپس، کد را با کلید F5 اجرا کنید.

در نهایت، فایلی با نام Sales_of_January.xlsx پیدا کردیم.

2. وجود یک فهرست را بررسی کنید

ما می‌توانیم وجود دایرکتوری را با استفاده از تابع Dir بررسی کنیم. بیایید کد را بنویسیم تا بررسی کنیم که آیا پوشه Exceldemy وجود دارد یا خیر. کد زیر را در کادر عمومی بنویسید و با کلید F5 اجرا کنید.

4996

تجزیه کد :

  • دو متغیر اعلام کرده ایم. PN حاوی نام مسیر کامل دایرکتوری چک کردن ما است.
  • در اینجا در تابع Dir ، دو مقدار، pathname و ویژگی را تنظیم کرده ایم. مقدار vbDirectory . این مقدار مشخصه به شناسایی دایرکتوری کمک می کند. و خروجی این تابع در ذخیره می شود فایل متغیر.
  • سپس بررسی کردیم که آیا متغیر خالی است یا خیر. اگر متوجه شدیم که متغیر نیست، وجود دایرکتوری را از طریق یک جعبه پیام اعلام کنیم، در غیر این صورت، بازگشت وجود ندارد.

در اینجا، Exceldemy<21 دایرکتوری> وجود دارد، بنابراین ما " Exceldemy وجود دارد " را خواهیم یافت، که در آن Exceldemy نام پوشه است.

3. پوشه ای ایجاد کنید که وجود ندارد

شما می توانید پوشه ای ایجاد کنید که در رایانه شما وجود ندارد. برای این کار باید نام مسیری ایجاد کنید که در پوشه های شما وجود نداشته باشد. بیایید تصور کنیم که یک دایرکتوری به نام Exceldemy_1 ایجاد می کنیم. ما از دستور MkDir برای ایجاد دایرکتوری استفاده می کنیم، اما قبل از آن، باید کد VBA زیر را بنویسیم.

8101

در اینجا ما دستوری برای ایجاد دایرکتوری با استفاده از نام مسیر از بلوک Else کدمان نوشته‌ایم. کد را با کلید F5 اجرا کنید .

دایرکتوری ایجاد شده است. بیایید به پوشه دایرکتوری نگاه کنیم. پوشه Exceldemy_1 اکنون در رایانه شما قابل مشاهده است.

خواندن مشابه:

  • نحوه فراخوانی یک Sub در VBA در اکسل (4 مثال)
  • برگرداندن یک مقدار در تابع VBA (هم مقادیر آرایه و هم مقادیر غیر آرایه)
  • استفاده از تابع VBA UCASE در اکسل (4 مثال)
  • نحوه استفاده از تابع TRIM درVBA در اکسل (تعریف + کد VBA)

4. یافتن اولین فایل از یک فهرست

وظیفه اصلی تابع Dir برای پیدا کردن اولین فایل در دایرکتوری ارائه شده. تنها چیزی که باید در داخل تابع ارائه کنید، نام مسیر است (تا دایرکتوری ظرف)، و اولین فایل را از آن دایرکتوری برمی گرداند.

بیایید اولین فایل را از خود پیدا کنیم. دایرکتوری Exceldemy . کد ما خواهد بود

1848

شما می توانید کد اصلی را مشاهده کنید. نام مسیر را در تابع Dir قرار داده ایم. اکنون کد را با کلید F5 اجرا کنید ، اولین فایل را در این دایرکتوری خواهید یافت.

5. یافتن همه فایل ها از دایرکتوری

در بخش قبل، نحوه یافتن اولین نام فایل از یک دایرکتوری را دیدیم. این وضعیت ممکن است زمانی پیش بیاید که شما نیاز دارید همه فایل ها را از یک فهرست خاص پیدا کنید. برای یافتن همه فایل‌ها در یک فهرست خاص، باید کد VBA زیر را بنویسید.

3773

در اینجا دو متغیر وجود دارد که نام فایل‌ها را به صورت ذخیره می‌کند. یک تک ( FN )، و به عنوان یک لیست ( FL ). حلقه Do while تکرار می شود تا هیچ فایلی در فهرست باقی نماند، با استفاده از این حلقه، نام هر فایل را در متغیر FL فشار می دهیم.

کد را اجرا کنید. و مانند تصویر زیر، تمام فایل ها را در دایرکتوری پیدا خواهید کرد.

6. همه فایل ها و پوشه ها را از یک فهرست پیدا کنید

مادر قسمت قبل اشاره کرده اید که همه فایل ها را کجا می توان پیدا کرد. ما همچنین می توانیم تمام زیر پوشه های یک پوشه را پیدا کنیم. برای انجام این کار، کد VBA زیر را که در زیر پیوست کرده‌ایم بنویسید.

4821

تغییر کد ما فقط استفاده از پارامترهای ویژگی است. ما از vbDirectory در آن فیلد استفاده کرده ایم. کد را اجرا کنید، و همه فایل ها و زیرپوشه های Exceldemy_Folder را پیدا خواهید کرد.

7 همه فایل‌های یک نوع خاص را پیدا کنید

با استفاده از تابع VBA Dir ، می‌توانیم هر نوع فایل خاصی را پیدا کنیم. بیایید با یک مثال کاوش کنیم.

ما فایل های .csv را از دایرکتوری خود پیدا می کنیم. کد ما مانند زیر خواهد بود-

3839

امیدواریم کد را درک کرده باشید که از مکانیزم مشابهی برای یافتن فایل ها استفاده می کند. در نام مسیر، از یک علامت عام ( * ) استفاده کردیم. این ستاره (*) نشان می دهد که هر کاراکتری تا هر عددی می تواند رخ دهد. از علامت عام به گونه ای استفاده شده است که نام فایل می تواند هر چیزی باشد اما باید یک فایل .csv باشد.

وقتی کد را اجرا می کنید، را برمی گرداند. فایل‌های csv از دایرکتوری Exceldemy .

بخش تمرین

ما یک تمرین ارائه کرده‌ایم بخش در هر برگ در سمت راست برای تمرین شما. لطفاً خودتان این کار را انجام دهید.

نتیجه‌گیری

این همه مربوط به جلسه امروز است. و این چند نمونه آسان استاز تابع VBA Dir در اکسل. لطفا در صورت داشتن هرگونه سوال یا پیشنهاد در قسمت نظرات با ما در میان بگذارید. برای درک بهتر لطفا برگه تمرین را دانلود کنید. از وب‌سایت ما، Exceldemy ، یک ارائه‌دهنده راه‌حل اکسل یک مرحله‌ای، دیدن کنید تا در مورد انواع روش‌های اکسل بیابید. از شکیبایی شما در خواندن این مقاله سپاسگزاریم.

هیو وست یک مربی و تحلیلگر اکسل بسیار با تجربه با بیش از 10 سال تجربه در این صنعت است. وی دارای مدرک لیسانس در رشته حسابداری و امور مالی و مدرک کارشناسی ارشد در رشته مدیریت بازرگانی است. هیو علاقه زیادی به تدریس دارد و یک رویکرد آموزشی منحصر به فرد ایجاد کرده است که به راحتی قابل پیگیری و درک است. دانش تخصصی او از اکسل به هزاران دانش آموز و متخصص در سراسر جهان کمک کرده تا مهارت های خود را بهبود بخشند و در حرفه خود برتری پیدا کنند. هیو از طریق وبلاگ خود دانش خود را با جهان به اشتراک می گذارد و آموزش های رایگان اکسل و آموزش آنلاین ارائه می دهد تا به افراد و مشاغل کمک کند تا به پتانسیل کامل خود دست یابند.