Faila nosaukuma un mapes nosaukuma izvilkšana no faila ceļa, izmantojot Microsoft Excel VBA

Anonim

Šajā rakstā mēs esam koplietojuši VBA kodu, lai rakstītu pielāgotu funkciju faila nosaukuma un mapes nosaukuma iegūšanai no faila ceļa.

Neapstrādātie dati šajā piemērā norāda noteiktu failu pilnu ceļu.

Loģisks skaidrojums

Šajā piemērā mēs esam izveidojuši VBA pielāgoto funkciju “FileOrFolderName”, kas atgriež faila vai mapes nosaukumu kā izvadi.

Funkcija “FileOrFolderName” ievada divus parametrus. Pirmais parametrs kā ievadi izmanto faila ceļu. Otrais parametrs kā ievadi izmanto Būla vērtību, ja mēs vēlamies faila nosaukumu kā izvadi, mēs šim parametram piešķirsim patieso vērtību, un, ja mēs vēlamies mapes nosaukumu kā izvadi, mēs šim parametram piešķirsim nepatiesu vērtību.

Lai atdalītu faila nosaukumu un mapes nosaukumu no faila ceļa, pirmkārt, faila ceļā atrodam ceļa atdalītāja pēdējās parādīšanās vietu. Pēc ceļa atdalītāja pēdējās parādīšanās mēs varam viegli atdalīt faila nosaukumu un mapes nosaukumu kā tekstu. Ceļa atdalītāja labajā pusē ir faila nosaukums, un teksts ceļa atdalītāja kreisajā pusē ir mapes nosaukums.

Ja faila ceļā nav atdalītāja, tad kā mapes nosaukums ir norādīts noklusējuma direktorija ceļš.

Pielāgotas funkcijas izpilde

Lai izmantotu definētu pielāgotu funkciju, dodieties uz šūnu C14 un ievadiet funkciju = FileOrFolderName (B14, FALSE), un šūnā D14 ievadiet funkciju = FileOrFolderName (B14, TRUE), kur šūna B14 satur faila ceļu.

Šūnai C14 tiks dots mapes nosaukums, bet šūnai D14 - faila nosaukums.

Lūdzu, sekojiet tālāk norādītajam kodam

 Funkcija FileOrFolderName (InputString As String, _ ReturnFileName As Boolean) As String 'Atgriež mapes nosaukumu vai faila nosaukumu, pamatojoties uz Būla vērtību, kas piešķirta Dim i kā vesels skaitlis, FolderName As String, FileName As String i = 0' Kods, ko izmanto, lai atrastu pēdējās pozīcijas pozīciju ceļa atdalītāja parādīšanās kamēr InStr (i + 1, InputString, Application.PathSeparator)> 0 i = InStr (i + 1, InputString, Application.PathSeparator) Wend 'Izvilkt mapes ceļu' Ja nav atrasts ceļa atdalītājs, piešķiriet noklusējuma direktorija ceļš Ja i = 0, tad FolderName = CurDir Cits FolderName = Pa kreisi (InputString, i - 1) Beigas Ja 'Faila nosaukuma izvilkšana FileName = Pa labi (InputString, Len (InputString) - i)' Atgriež mapi vai faila nosaukumu no funkcijas, kuras pamatā ir parametrs ReturnFileName 

Ja jums patika šis emuārs, kopīgojiet to ar saviem draugiem Facebook. Varat arī sekot mums Twitter un Facebook.

Mēs labprāt uzklausītu jūsu viedokli, dariet mums zināmu, kā mēs varam uzlabot savu darbu un padarīt to labāku jums. Rakstiet mums e -pasta vietnē