Екцел ВБА ДИР функција

Дир је једна од функција доступних у ВБА. Дир функција је за упућивање директорија у ВБА коду.
Функција која враћа име датотеке или директорија која се подудара са датим атрибутом или низом, у супротном враћа прву датотеку или мапу. Једноставним речима, ако имамо фасциклу АБЦ и унутар АБЦ постоји датотека КСИЗ, тада можемо приступити КСИЗ датотеци помоћу ДИР функције у ВБА.

Формула за ДИР функцију у Екцелу ВБА

ДИР функција има следећу синтаксу у Екцел ВБА:

Садржи два дела Патхнаме и Аттрибутес.

  • Назив пута : По имену, сви могу схватити да је то пут датотеке у којој заправо фајл постоји. Ако у име пута не унесемо ниједан пут, вратит ће се празан низ.
  • Атрибути: То је факултативни аргумент, не користимо много од тога. Ово можемо користити када желимо отворити датотеку са доњим атрибутима, а онда ВБА тражи те датотеке.
вбАрцхивеОдређује Архиве или резервне датотеке.
вбНормалНормални (задани) или без атрибута.
вбРеадОнлидатотеке само за читање
вбСистемСистемске датотеке
вбВолуменалепница волумена; Ако са овим употребите било који други атрибут, ознака волумена се занемарује.
вбДирецториИменике или мапе.
вбХидденскривене датотеке
вбАлиасНазив датотеке је псеудоним

Како се користи ДИР функција у Екцелу ВБА?

Испод су различити примери коришћења ДИР функције у Екцелу помоћу ВБА кода.

Можете преузети овај ВБА ДИР Екцел образац овде - ВБА ДИР Екцел предложак

ВБА ДИР функција - пример бр. 1

У овом примеру ћемо видети како приступити називу датотеке помоћу функције ДИР у ВБА.

1. корак: Идите на картицу Девелоперс и кликните на Висуал Басиц

Корак 2: Отворите модул из опције Уметање као што је приказано у наставку.

Корак 3: Да бисте покренули било који макро, прво морамо дати име макронаредби са кључном речју "под" како је доле наведено.

Шифра:

 Суб миекампле1 () Крај Суб 

Запамтите да пишемо свој код у „Модуле1“ када унесемо „под миекампле ()“, аутоматски ће се појавити „Крај под“.

Корак 4: Дефинишите низ користећи кључну реч „ Дим “ која се односи на димензију. На слици екрана испод „мистринг“ налази се назив низа.

Шифра:

 Суб миекампле1 () Дим мистринг као Стринг Енд Суб 

Запамтите кад год дефинишете имена типова података или имена програма не би требало бити размака између двије ријечи. „Мистринг“ нема размака између „ми“ и „стринг“.

Датотека је доступна у узорку директорија који је доступан на радној површини, а назив датотеке је „КТ трацкер мине“.

Ц: \ Корисници \ цба_13 \ Десктоп \ Узорак \

Корак 5: Сада морамо да сачувамо име датотеке у „мистринг“ помоћу функције Дир.

Шифра:

 Суб миекампле1 () Дим мистринг Ас Стринг мистринг = Дир ("Ц: \ Усерс \ цба_13 \ Десктоп \ Сампле \") Крај Суб 

На горњем снимку слике у функцији Дир, дао сам путању датотеке искључујући назив датотеке. Како постоји само једна датотека, вратиће назив датотеке.

Корак 6: Сада уз горњи корак име датотеке сачувано у низу "мистринг". Да бисмо приказали име датотеке, потребно је да је приказујемо кроз оквир за поруке. Креирајте оквир за поруке.

Шифра:

 Суб миекампле1 () Дим мистринг ас Стринг мистринг = Дир ("Ц: \ Усерс \ цба_13 \ Десктоп \ Сампле \") МсгБок (мистринг) Енд Суб 

Дали смо упутство за приказивање података у „мистринг“ -у кроз оквир за поруке, јер „мистринг“ има назив датотеке и она ће приказати име датотеке кроз оквир за поруке.

Корак 7: Сада покрените код кликом на дугме Плаи или притиском на тастер Ф5.

ВБА ДИР функција - пример бр. 2

У овом примеру ћемо видети како отворити датотеку помоћу функције ДИР у Екцелу ВБА.

1. корак: Отворите екран ВБА кода и започните са давањем програма називу „екампле2“ или било којем имену које желите.

Шифра:

 Суб екампле2 () Крај Суб 

Корак 2: Дефинишите два низа са именима „Име фолдера“ и „Назив датотеке“.

Шифра:

 Суб екампле2 () Дим Фолдернаме Ас Стринг Дим Име датотеке као Стринг Енд Суб 

Корак 3: Сада доделите путањи мапи име име.

Шифра:

 Суб екампле2 () Дим Фолдернаме Ас Стринг Дим Име датотеке као Стринг Фолдернаме = "Ц: \ Усерс \ цба_13 \ Десктоп \ Сампле \" Енд Суб 

Корак 4: Датотеку доделите „име датотеке“ помоћу функције Дир. Овде смо користили променљиву „Фолдернаме“ јер има путању до директоријума. Уз помоћ амперсанд, стази смо додали име датотеке.

Шифра:

 Суб екампле2 () Дим Фолдернаме Ас Стринг Дим Име датотеке као Стринг Фолдернаме = "Ц: \ Усерс \ цба_13 \ Десктоп \ Сампле \" Име датотеке = Дир (Име фолдера & "КТ Трацкер мине.клск") Крај Суб 

Сада функција Дир враћа име датотеке и она ће се сместити у променљиву „филенаме“.

Корак 5: У претходном примеру користили смо оквир за поруке да видимо резултате. Али, у овом случају желимо да отворимо датотеку, па ћемо користити команду „воркбоокс.опен“.

Шифра:

 Суб екампле2 () Дим Фолдернаме Ас Стринг Дим Име датотеке као Стринг Фолдернаме = "Ц: \ Усерс \ цба_13 \ Десктоп \ Сампле \" Име датотеке = Дир (Име фолдера & "КТ Трацкер мине.клск") Радне свеске.Отворите име фолдера и назив датотеке Крај Суб 

Корак 6: Покрените горњи код отвориће датотеку доступну у мапи „Ц: \ Усерс \ цба_13 \ Десктоп \ Сампле \“ са називом датотеке „КТ Трацкер мине“.

ВБА ДИР функција - пример бр. 3

Сада ћемо видети програм да знамо да ли је директоријум доступан или не. Имам фасциклу „Подаци“ као што је приказано у наставку.

Помоћу функције Дир морамо проверити да ли је на путу Ц: \ Усерс \ цба_13 \ Десктоп \ Сампле \ доступна мапа „Дата“.

Корак 1: Креирајте назив програма и дефинишите два низа са именима ФД и ФД1.

Шифра:

 Суб екампле3 () Дим Фд као стринг стринг Дим Фд1 Ас Стринг Енд Суб 

Корак 2: Доделите путању мапе променљивој „Фд“.

Шифра:

 Под-пример3 () Дим Фд као стринг Дим Фд1 као стринг Фд = "Ц: \ Корисници \ цба_13 \ Десктоп \ Сампле \ Подаци" Крај Суб 

Корак 3: Сада користите функцију Дир да бисте вратили име фасцикле као што је приказано у наставку.

Шифра:

 Под-пример3 () Дим Фд као стринг Дим Фд1 као стринг Фд = "Ц: \ Корисници \ цба_13 \ Десктоп \ Сампле \ Подаци" Фд1 = Дир (Фд, вбДирецтори) Крај Суб 

Резултат функције Дир требао би бити назив мапе и чува се у Фд1 варијабли низа. Ако мапа „Подаци“ није доступна у одговарајућој мапи, неће вратити ниједан низ.

Корак 4: Сада морамо проверити да ли Фд1 има фасциклу „Подаци“ или не. Користите ИФ стање да бисте проверили да ли Фд1 има низ "Подаци" или не. Ако је доступна, изјаву исписујте као „постоји“.

Шифра:

 Суб екампле3 () Дим Фд као стринг Дим Фд1 Ас Стринг Фд = "Ц: \ Корисници \ цба_13 \ Десктоп \ Сампле \ Подаци" Фд1 = Дир (Фд, вбДирецтори) Ако је Фд1 = "Подаци", тада МсгБок ("Излази") крај Суб 

Корак 5: У случају да се Фд1 не подудара са мапом „Подаци“, штампаће изјаву „Не постоји“ у другом стању.

Шифра:

 Суб екампле3 () Дим Фд као Стринг Дим Фд1 Ас Стринг Фд = "Ц: \ Корисници \ цба_13 \ Десктоп \ Сампле \ Дата" Фд1 = Дир (Фд, вбДирецтори) Ако је Фд1 = "Подаци", тада МсгБок ("Излази") остало МсгБок ("Не излази") Крај Суб 

Корак 6: Завршите петљу "Иф" као што је приказано на слици испод.

Шифра:

 Суб екампле3 () Дим Фд као Стринг Дим Фд1 Ас Стринг Фд = "Ц: \ Корисници \ цба_13 \ Десктоп \ Сампле \ Дата" Фд1 = Дир (Фд, вбДирецтори) Ако је Фд1 = "Подаци", тада МсгБок ("Излази") остало МсгБок ("Не излази") Енд Иф Енд Суб 

Корак 7: Покрените код притиском на тастер Ф5 или кликом на дугме Плаи да бисте проверили да ли је директоријум доступан или не. Ако је у тој мапи доступна датотека „Подаци“, она ће вратити оквир за поруку са поруком „Постоји“, како је доле наведено.

Корак 8: Само промените име мапе као Дата1.

 Суб екампле3 () Дим Фд као Стринг Дим Фд1 Ас Стринг Фд = "Ц: \ Корисници \ цба_13 \ Десктоп \ Сампле \ Дата1" Фд1 = Дир (Фд, вбДирецтори) Ако је Фд1 = "Подаци", тада МсгБок ("Излази") остало МсгБок ("Не излази") Енд Иф Енд Суб 

Корак 9: Поново покрените код. Сада је резултат "Не постоји" као што је приказано у наставку.

Ствари које треба запамтити

  • Аргументи у функцији Дир нису обавезни.
  • Ако желимо скривене датотеке, мапе или различите типове директорија, онда у другом аргументу спомените свој захтев.
  • Употријебите "\" на крају имена мапе, а истовремено дарујте функцију Дир да бисте ушли у мапу.
  • Ако желимо позвати или отворити више датотека, можемо користити знак "*" или "?".

Препоручени чланци

Ово је водич за ВБА ДИР функцију. Овде смо расправљали о томе како користити функцију ДИР у Екцелу ВБА заједно са неколико практичних примера и бесплатним екцел шаблоном. Можете и да прођете кроз друге наше предложене чланке -

  1. ВБА Воркбоок
  2. Индиректна функција у Екцелу
  3. ВБА Цоунт
  4. Екцел КСОР функција

Категорија: