როგორ გამოვიყენოთ VBA DIR ფუნქცია Excel-ში (7 პრაქტიკული მაგალითი)

  • გააზიარეთ ეს
Hugh West

DIR ფუნქცია VBA -ში ძირითადად გიჩვენებთ დირექტორიას ან ფაილებს მოცემული საქაღალდედან. მას ასევე შეუძლია დააბრუნოს პირველი ფაილი ამ ფუნქციით. ამ ფუნქციას მრავალი გამოყენება აქვს კონკრეტული ფაილების და საქაღალდეების მისაღებად. ყველაფერი რაც თქვენ გჭირდებათ, უბრალოდ ჩადეთ ფაილის გზა VBA კოდის ბილიკში. შეიძლება უფრო რთული აღმოჩნდეთ VBA DIR კოდების გამოყენება. არ ინერვიულოთ, ამ სტატიაში ჩვენ ვაპირებთ გაჩვენოთ რამდენიმე მაგალითი VBA DIR ფუნქციის უკეთესი ვიზუალიზაციისთვის. იმედია შეძლებთ ფუნქციის გამოყენებას სტატიის წაკითხვის შემდეგ. მაშ ასე, დავიწყოთ.

ჩამოტვირთეთ პრაქტიკის სამუშაო წიგნი

ჩამოტვირთეთ შემდეგი სავარჯიშო სამუშაო წიგნი. ეს დაგეხმარებათ უკეთ გაიგოთ თემა.

DIR Function.xlsm

შესავალი DIR ფუნქციაში

რეზიუმე:

VBA DIR ფუნქცია აბრუნებს ფაილის ან დირექტორიას სახელს მოცემული საქაღალდის ბილიკიდან. პირობითად, ის აბრუნებს პირველ ფაილს.

სინტაქსი:

Dir [ (pathname, [ attributes ] ) ]

არგუმენტების ახსნა:

არგუმენტი საჭირო/სურვილისამებრ ახსნა
PathName არასავალდებულო გზა ფაილის წვდომისთვის და განსაზღვრისთვის
ატრიბუტები არასავალდებულო მუდმივი ან რიცხვითი გამოხატულება მიუთითებს შესატყვისი ფაილების ატრიბუტებს

არსებობს რამდენიმე წინასწარიგანსაზღვრული ატრიბუტები, ისინია-

ატრიბუტის სახელი აღწერა
vbNormal ფაილები კონკრეტული ატრიბუტების გარეშე
vbReadOnly მხოლოდ წაკითხვადი ფაილები ატრიბუტების გარეშე
vbHidden დამალული ფაილები ატრიბუტების გარეშე
vbSystem სისტემის ფაილები ატრიბუტების გარეშე
vbVolume Volume label
vbDirectory დირექტორიები ან საქაღალდეები ატრიბუტების გარეშე
vbAlias მითითებული ფაილის სახელი არის მეტსახელი

Excel-ში VBA DIR ფუნქციის გამოყენების 7 მაგალითი

აღწერიდან შეიძლება გესმოდეთ, რომ VBA DIR ფუნქცია უზრუნველყოფს ფაილის სახელი მითითებული ბილიკის სახელიდან. გავიგოთ ეს მაგალითით. აქ ჩვენ შევქმენით დირექტორია Exceldemy_Folder , რათა გაჩვენოთ სხვადასხვა მაგალითები. ამ საქაღალდეში არის სხვადასხვა პატარა საქაღალდეები და ფაილები.

1. იპოვეთ ფაილის სახელი გზაზე

ჩვენს საქაღალდეში, ჩვენ შეგვიძლია ვიპოვოთ კონკრეტული ფაილი ფაილის სახელის გზის გამოცხადება.

ფაილის გზის კოპირების შემდეგ, თქვენ უნდა გაუშვათ კოდი.

ამ მიზეზით, გადადით დეველოპერი ჩანართზე >> აირჩიეთ Visual Basic . შემდეგ გადადით ჩასმა ჩანართზე >> აირჩიეთ მოდული. ზოგადი დიალოგურ ფანჯარაში ჩვენ ვწერთ კოდს.

რადგან ჩვენი დღის წესრიგშია <1-ის პოვნა>ფაილის სახელი ბილიკის სახელიდან, ჩვენ დავაყენებთსრული ბილიკის სახელი (ძირიდან ფაილამდე) და ჩვენი კოდი იქნება

4059

აქ ჩვენი კოდის ფარგლებში დავაყენეთ ბილიკის სახელი E:\Exceldemy\Sales_of_January. xlsx

კოდის დაშლა:

  • თავდაპირველად ჩვენ გამოვაცხადეთ სტრიქონის ცვლადი სახელად FN . და Dir ფუნქციის გამომავალი შენახული იყო ამ ცვლადში.
  • შემდეგ, Dir ფუნქცია პოულობს ფაილის სახელს და აბრუნებს მას მოწოდებული ბილიკიდან.
  • შემდეგ MsgBox ადგენს გამომავალს შეტყობინებების ყუთში. MsgBox აბრუნებს გამომავალს შეტყობინებების ყუთის გამოყენებით.
  • შემდეგ, გაუშვით კოდი F5 ღილაკით.
<. 0>

ბოლოს, ჩვენ ვიპოვეთ ფაილი სახელად Sales_of_January.xlsx .

2. შეამოწმეთ დირექტორიას არსებობა

ჩვენ შეგვიძლია შევამოწმოთ დირექტორიას არსებობა Dir ფუნქციის გამოყენებით. მოდით დავწეროთ კოდი, რომ შევამოწმოთ არის თუ არა Exceldemy საქაღალდე. ჩაწერეთ შემდეგი კოდი ზოგად ველში და გაუშვით F5 გასაღებით.

6452

კოდის დაშლა :

  • ჩვენ გამოვაცხადეთ ორი ცვლადი; PN შეიცავს ჩვენი შემოწმების დირექტორიას სრულ ბილიკს.
  • აქ Dir ფუნქციაში ჩვენ დავაყენეთ ორი მნიშვნელობა, pathname და ატრიბუტი. მნიშვნელობა როგორც vbDirectory . ეს ატრიბუტის მნიშვნელობა დაგეხმარებათ დირექტორიას ამოცნობაში. და ამ ფუნქციის გამომავალი ინახება ფაილი ცვლადი.
  • შემდეგ შევამოწმეთ ცარიელია თუ არა ცვლადი. თუ აღმოვაჩენთ, რომ ცვლადი არ არის, მაშინ გამოვაცხადოთ დირექტორიას არსებობა შეტყობინებების ყუთში, წინააღმდეგ შემთხვევაში, დაბრუნება არ არსებობს.

აქ, Exceldemy დირექტორია არსებობს, ამიტომ ჩვენ ვიპოვით " Exceldemy არსებობს ", სადაც Exceldemy არის საქაღალდის სახელი.

3. შექმენით საქაღალდე, რომელიც არ არსებობს

შეგიძლიათ შექმნათ საქაღალდე, რომელიც არ არსებობს თქვენს კომპიუტერში. ამისათვის თქვენ უნდა შექმნათ ბილეთის სახელი, რომელიც არ არსებობს თქვენს საქაღალდეებში. წარმოვიდგინოთ, რომ ჩვენ ვაპირებთ შექმნას დირექტორია სახელწოდებით Exceldemy_1 . დირექტორიას შესაქმნელად გამოვიყენებთ MkDir ბრძანებას, მაგრამ მანამდე უნდა ჩავწეროთ შემდეგი VBA კოდი.

1546

აქ ჩვენ დავწერეთ ბრძანება, რომ შევქმნათ დირექტორია ჩვენი კოდის Else ბლოკიდან ბილიკის სახელის გამოყენებით. გაუშვით კოდი F5 კლავიშით.

საქაღალდე შეიქმნა. მოდით გადავხედოთ დირექტორიას საქაღალდეს. Exceldemy_1 საქაღალდე ახლა ჩანს თქვენს კომპიუტერში.

მსგავსი წაკითხვები:

  • როგორ გამოვიძახოთ Sub-ი VBA-ში Excel-ში (4 მაგალითი)
  • დააბრუნოთ მნიშვნელობა VBA ფუნქციაში (როგორც მასივის, ისე არამასივნის მნიშვნელობები)
  • გამოიყენეთ VBA UCASE ფუნქცია Excel-ში (4 მაგალითი)
  • როგორ გამოვიყენოთ TRIM ფუნქციაVBA Excel-ში (Definition + VBA Code)

4. იპოვნეთ პირველი ფაილი დირექტორიადან

Dir ფუნქციის მთავარი ამოცანაა მოწოდებულ დირექტორიაში პირველი ფაილის მოსაძებნად. ყველაფერი რაც თქვენ უნდა მიუთითოთ ფუნქციის შიგნით არის ბილიკის სახელი (კონტეინერის დირექტორიამდე) და ის დააბრუნებს პირველ ფაილს ამ დირექტორიადან.

მოდით, ვიპოვოთ პირველი ფაილი ჩვენი Exceldemy დირექტორია. ჩვენი კოდი იქნება

3232

თქვენ შეგიძლიათ ნახოთ ძირითადი კოდი; ჩვენ გადავეცით ბილიკის სახელი Dir ფუნქციაში. ახლა გაუშვით კოდი F5 ღილაკით, თქვენ იპოვით პირველ ფაილს ამ დირექტორიაში.

5. იპოვეთ ყველა ფაილები დირექტორიადან

წინა სექციაში ჩვენ ვნახეთ, როგორ მოვძებნოთ პირველი ფაილის სახელი დირექტორიადან. სიტუაცია შეიძლება წარმოიშვას, როდესაც თქვენ უნდა იპოვოთ ყველა ფაილი კონკრეტული დირექტორიადან. კონკრეტულ დირექტორიაში ყველა ფაილის მოსაძებნად, თქვენ უნდა დაწეროთ შემდეგი VBA კოდი.

4423

აქ არის ორი ცვლადი ფაილის სახელების შესანახად. სინგლი ( FN ) და როგორც სია ( FL ). ციკლი Do while მეორდება, სანამ ფაილი არ დარჩება დირექტორიაში, ამ ციკლის გამოყენებით, ჩვენ ყველა ფაილის სახელს ვაყენებთ FL ცვლადში.

შეასრულეთ კოდი, და იპოვით ყველა ფაილს დირექტორიაში, როგორც ქვემოთ მოცემულ სურათზე.

6. იპოვეთ ყველა ფაილი და საქაღალდე დირექტორიადან

ჩვენწინა განყოფილებაში ახსენეთ, სად უნდა იპოვოთ ყველა ფაილი. ჩვენ ასევე შეგვიძლია ვიპოვოთ ყველა ქვესაქაღალდე საქაღალდეში. ამისათვის ჩაწერეთ შემდეგი VBA კოდი, რომელიც ჩვენ დავურთეთ ქვემოთ.

4661

ჩვენი კოდის ცვლილება მხოლოდ ატრიბუტის პარამეტრების გამოყენებაა. ჩვენ გამოვიყენეთ vbDirectory ამ ველში. გაუშვით კოდი და იპოვით Exceldemy_Folder-ის ყველა ფაილს და ქვესაქაღალდეს .

7 იპოვეთ კონკრეტული ტიპის ყველა ფაილი

VBA Dir ფუნქციის გამოყენებით, ჩვენ შეგვიძლია ვიპოვოთ ნებისმიერი კონკრეტული ტიპის ფაილი. განვიხილოთ მაგალითით.

ჩვენ ვიპოვით .csv ფაილებს ჩვენი დირექტორიადან. ჩვენი კოდი იქნება შემდეგი-

2291

ვიმედოვნებთ, რომ თქვენ გაიგეთ კოდი, რომელიც იყენებს მსგავს მექანიზმს ფაილების მოსაძებნად. ბილიკის სახელში ჩვენ ვიყენებდით ველურ ბარათს ( * ). ეს ვარსკვლავი (*) აღნიშნავს, რომ ნებისმიერი სიმბოლო შეიძლება იყოს ნებისმიერ რიცხვამდე. wildcard გამოიყენება ისე, რომ ფაილის სახელი შეიძლება იყოს ნებისმიერი, მაგრამ უნდა იყოს .csv ფაილი.

როდესაც თქვენ გაუშვით კოდი, ის დააბრუნებს . csv ფაილები ჩვენი Exceldemy კატალოგიდან.

პრაქტიკის განყოფილება

ჩვენ გთავაზობთ პრაქტიკას განყოფილება თითოეულ ფურცელზე მარჯვენა მხარეს თქვენი პრაქტიკისთვის. გთხოვთ, გააკეთოთ ეს დამოუკიდებლად.

დასკვნა

ეს ყველაფერი დღევანდელ სესიაზეა. და ეს არის რამდენიმე მარტივი მაგალითიExcel-ში VBA Dir ფუნქციიდან. გთხოვთ შეგვატყობინოთ კომენტარების განყოფილებაში, თუ თქვენ გაქვთ რაიმე შეკითხვები ან წინადადებები. უკეთესი გაგებისთვის, გთხოვთ, ჩამოტვირთოთ სავარჯიშო ფურცელი. ეწვიეთ ჩვენს ვებ-გვერდს, Exceldemy , Excel-ის ერთჯერადი გადაწყვეტილებების მიმწოდებელს, რათა გაეცნოთ სხვადასხვა სახის Excel მეთოდებს. გმადლობთ მოთმინებისთვის ამ სტატიის წაკითხვისას.

ჰიუ ვესტი არის Excel-ის ძალიან გამოცდილი ტრენერი და ანალიტიკოსი, რომელსაც აქვს 10 წელზე მეტი გამოცდილება ინდუსტრიაში. მას აქვს ბაკალავრის ხარისხი ბუღალტერიასა და ფინანსებში და მაგისტრის ხარისხი ბიზნესის ადმინისტრირებაში. ჰიუს აქვს სწავლების გატაცება და შეიმუშავა სწავლების უნიკალური მიდგომა, რომელიც ადვილად გასაგები და გასაგებია. მისი ექსპერტი Excel-ის ცოდნა დაეხმარა ათასობით სტუდენტს და პროფესიონალს მთელს მსოფლიოში, გაეუმჯობესებინათ თავიანთი უნარები და გამოირჩეოდნენ თავიანთ კარიერაში. თავისი ბლოგის საშუალებით, ჰიუ უზიარებს თავის ცოდნას მსოფლიოს, სთავაზობს უფასო Excel გაკვეთილებს და ონლაინ ტრენინგებს, რათა დაეხმაროს ინდივიდებსა და ბიზნესს თავიანთი პოტენციალის სრულად მიღწევაში.