Šiame straipsnyje mes bendrinome VBA kodą, skirtą parašyti pasirinktinę funkciją, skirtą failo pavadinimui ir aplanko pavadinimui išgauti iš failo kelio.
Neapdoroti šio pavyzdžio duomenys nurodo visą tam tikrų failų kelią.
Loginis paaiškinimas
Šiame pavyzdyje sukūrėme pasirinktinę VBA funkciją „FileOrFolderName“, kuri grąžina failo ar aplanko pavadinimą.
Funkcijai „FileOrFolderName“ naudojami du parametrai. Pirmasis parametras naudoja failo kelią kaip įvestį. Antrasis parametras įveda loginę vertę, jei norime failo pavadinimą kaip išvestį, šiam parametrui priskirsime tikrąją vertę, o jei norime aplanko pavadinimą kaip išvestį, šiam parametrui priskirsime klaidingą reikšmę.
Norėdami atskirti failo pavadinimą ir aplanko pavadinimą nuo failo kelio, pirmiausia randame paskutinio kelio atskyrimo vietą failo kelyje. Po paskutinio kelio atskyrimo mes galime lengvai atskirti failo pavadinimą ir aplanko pavadinimą kaip tekstą. Dešinėje kelio skyriklio pusėje yra failo pavadinimas, o tekstas kairėje kelio skyriklio pusėje yra aplanko pavadinimas.
Jei failo kelyje nėra kelio skyriklio, numatytasis katalogo kelias nurodomas kaip aplanko pavadinimas.
Individualizuotos funkcijos vykdymas
Jei norite naudoti apibrėžtą pasirinktinę funkciją, eikite į langelį C14 ir įveskite funkciją = FileOrFolderName (B14, FALSE), o langelyje D14 įveskite funkciją = FileOrFolderName (B14, TRUE), kur B14 langelyje yra failo kelias.
Langelis C14 suteiks aplanko pavadinimą, o langelis D14 - failo pavadinimą.
Sekite toliau pateiktą kodą
Funkcija FileOrFolderName (InputString As String, _ ReturnFileName As Boolean) As String 'Grąžina aplanko vardą arba failo pavadinimą, pagrįstą logine reikšme Dim i As Integer, FolderName As String, FileName As String i = 0' Kodas, naudojamas paskutinei pozicijai rasti kelio atskyriklio atsiradimas Nors InStr (i + 1, InputString, Application.PathSeparator)> 0 i = InStr (i + 1, InputString, Application.PathSeparator) Wend 'Ištraukite aplanko kelią' Jei nerasite kelio skyriklio, tada priskirkite numatytasis katalogo kelias Jei i = 0, tada FolderName = CurDir El. FolderName = Left (InputString, i - 1) End If 'Failo pavadinimo ištraukimas FileName = Right (InputString, Len (InputString) - i)' Aplanko arba failo pavadinimo grąžinimas iš funkcijos, pagrįstos parametru ReturnFileName If ReturnFileName, tada FileOrFolderName = FileName Kita FileOrFolderName = FolderName End If End Function
Jei jums patiko šis tinklaraštis, pasidalykite juo su draugais „Facebook“. Be to, mus galite sekti „Twitter“ ir „Facebook“.
Mes norėtume išgirsti jūsų nuomonę, praneškite mums, kaip galime pagerinti savo darbą ir padaryti jį geresnį. Rašykite mums el