Издвајање назива датотеке и назива фасцикле из путање датотеке помоћу ВБА у програму Мицрософт Екцел

Anonim

У овом чланку смо поделили ВБА код за писање прилагођене функције за издвајање имена датотеке и назива фасцикле из путање датотеке.

Сирови подаци за овај пример наводе пуну путању одређених датотека.

Логичко објашњење

У овом примеру, креирали смо прилагођену ВБА функцију „ФилеОрФолдерНаме“ која враћа назив датотеке или фасцикле као излаз.

Функција „ФилеОрФолдерНаме“ узима два параметра као улаз. Први параметар узима путању датотеке као улаз. Други параметар узима логичку вриједност као улаз, ако желимо назив датотеке као излаз, овом параметру ћемо додијелити Труе вриједност, а ако желимо назив фолдера као излаз, овом параметру ћемо додијелити Фалсе вриједност.

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

Ако у путањи датотеке не постоји сепаратор путање, подразумевана путања директоријума је наведена као име фасцикле.

Извршавање прилагођене функције

Да бисте користили дефинисану прилагођену функцију, идите у ћелију Ц14 и унесите функцију = ФилеОрФолдерНаме (Б14, ФАЛСЕ), а у ћелију Д14 унесите функцију = ФилеОрФолдерНаме (Б14, ТРУЕ), где ћелија Б14 садржи путању до датотеке.

Ћелија Ц14 ће дати име фасцикле, а ћелија Д14 име датотеке.

Молимо следите доле за код

 Функција ФилеОрФолдерНаме (ИнпутСтринг Ас Стринг, _ РетурнФилеНаме Ас Боолеан) Ас Стринг 'Враћа назив фасцикле или назив датотеке на основу логичке вредности додељене Дим и Ас Интегер, ФолдерНаме Ас Стринг, ФилеНаме Ас Стринг и = 0' Код који се користи за проналажење последње позиције појављивање сепаратора пута Док је ИнСтр (и + 1, ИнпутСтринг, Апплицатион.ПатхСепаратор)> 0 и = ИнСтр (и + 1, ИнпутСтринг, Апплицатион.ПатхСепаратор) Венд 'Издвоји путању фасцикле' Ако се не пронађе појављивање сепаратора пута, доделите подразумевана путања до директоријума Ако је и = 0 Тада је Име фасцикле = ЦурДир Остало Име фасцикле = Лево (ИнпутСтринг, и - 1) Крај Ако је 'Издвајање назива датотеке Име датотеке = Десно (ИнпутСтринг, Лен (ИнпутСтринг) - и)' Враћање назива фасцикле или датотеке из функције засноване на параметру РетурнФилеНаме Ако РетурнФилеНаме Затим ФилеОрФолдерНаме = Име датотеке Остало ФилеОрФолдерНаме = Име фасцикле Енд Иф Енд Функција 

Ако вам се допао овај блог, поделите га са пријатељима на Фацебооку. Такође, можете нас пратити на Твиттер -у и Фацебоок -у.

Волели бисмо да чујемо од вас, јавите нам како можемо побољшати наш рад и учинити га бољим за вас. Пишите нам на веб локацији е -поште