Ši Excel makrokomanda leidžia perduoti failo kelią, kad įvertintumėte, ar failas yra. Pavyzdžiui, galite turėti procesą, kuris manipuliuoja kažkur jūsų kompiuteryje esančiu failu. Pavyzdžiui, gali tekti atidaryti esamą darbaknygę, kad kasdien į ją pridėtumėte duomenų. Tokiu atveju gali tekti patikrinti, ar failas, kurį reikia manipuliuoti, egzistuoja.
Kaip veikia makrokomandas
Pirmiausia reikia pastebėti šią makrokomandą, kad tai yra funkcija, o ne antrinė procedūra. Padarius šią makrokomandą funkcija, galite jai perduoti bet kokį failo kelią.
Šioje makrokomandoje naudojate funkciją Dir, kuri grąžina eilutę, nurodančią failo pavadinimą, atitinkantį tai, ką jam perduodate. Šią funkciją galima naudoti įvairiais būdais, tačiau čia jūs naudojate ją norėdami patikrinti, ar yra failo kelias, kurį jai perduodate:
Funkcija FileExists(FPath As String) Kaip Būlio reikšmė
1 veiksmas: deklaruokite savo kintamuosius
Dim FName As String
2 veiksmas: naudokite funkciją Dir, kad gautumėte failo pavadinimą
FName = Dir(FPath)
'3 veiksmas: jei failas yra, grąžinkite True; kitaip Netiesa
Jei FName <> " Tada failas egzistuoja = True _
Kita: FileExists = klaidinga
Pabaigos funkcija
1 veiksmas deklaruoja eilutės kintamąjį, kuriame yra failo pavadinimas, kuris grąžinamas iš funkcijos Dir. FName yra eilutės kintamojo pavadinimas.
2 veiksme bandote nustatyti kintamąjį FName. Tai galite padaryti perduodami kintamąjį FPath į funkciją Dir. Šis FPath kintamasis perduodamas per funkcijų deklaracijas (žr. pirmąją kodo eilutę). Ši struktūra neleidžia koduoti failo kelio, perduodant jį kaip kintamąjį.
Jei kintamojo FName nustatyti negalima, kelias, kurį praėjote, neegzistuoja. Taigi kintamasis FName yra tuščias. 3 veiksmas tik paverčia tą rezultatą į teisingą arba klaidingą išraišką.
Vėlgi, šią funkciją galima naudoti norint įvertinti bet kokį failo kelią, kurį jai perduodate. Tai yra makrokomandos kaip funkcijos rašymo grožis.
Šioje makrokomandoje parodyta, kaip naudoti šią funkciją:
Sub-makro1()
Jei FileExists("C:TempMyNewBook.xlsx") = True Tada
MsgBox "Failas egzistuoja."
Kitas
MsgBox "Failas neegzistuoja."
Pabaiga, jei
Pabaigos sub
Kaip naudoti makrokomandą
Norėdami įdiegti šią makrokomandą, galite nukopijuoti ir įklijuoti abi kodo dalis į standartinį modulį:
Suaktyvinkite Visual Basic redaktorių paspausdami Alt + F11.
Dešiniuoju pelės mygtuku spustelėkite projekto / darbaknygės pavadinimą projekto lange.
Pasirinkite Įterpti → Modulis.
Įveskite arba įklijuokite kodą naujai sukurtame modulyje.