"Excel VBA": patikrinti, ar failas egzistuoja, ar ne

  • Pasidalinti
Hugh West

Vienas iš naudingiausių "Excel" naudojimo būdų VBA kasdieniame gyvenime yra tai, kad galime patikrinti, ar failas egzistuoja mūsų kompiuteryje, ar ne. Šiame straipsnyje parodysiu, kaip galima patikrinti, ar failas egzistuoja mūsų kompiuteryje, ar ne, naudojant "Excel". VBA .

VBA kodas, skirtas patikrinti, ar failas egzistuoja, ar ne (greita peržiūra)

 Sub Check_If_a_File_Exists() File_Name = "E:\ExcelWIKI\Book1.xlsm" File_Name = Dir(File_Name) If File_Name = "" Then MsgBox "Failas neegzistuoja." Else MsgBox "Failas egzistuoja." End If End Sub 

Atsisiųsti praktikos sąsiuvinį

Atsisiųskite šį pratybų sąsiuvinį, kad galėtumėte atlikti pratimus skaitydami šį straipsnį.

VBA Patikrinti, ar yra failas.xlsm

VBA kodo, skirto patikrinti, ar failas egzistuoja, ar ne, apžvalga (analizė žingsnis po žingsnio)

Taigi, nieko nelaukdami pereikime prie mūsų pagrindinės šiandienos diskusijos. VBA kodą žingsnis po žingsnio, kad sužinotumėte, kaip patikrinti, ar failas mūsų kompiuteriuose egzistuoja, ar ne.

⧪ 1 žingsnis: reikiamų įvesties duomenų įterpimas

Pačioje kodo pradžioje turime į jį įterpti reikiamą įvestį. Šiame kode reikalinga tik viena įvestis - tai failo, kurio ieškome, pavadinimas. Įterpkite pilną failo pavadinimą (kartu su susijusiu katalogu).

 Failo pavadinimas = "C:\ExcelWIKI\Book1.xlsm" 

⧪ 2 veiksmas: failo pavadinimo išskyrimas naudojant VBA Dir funkciją

Toliau pasinaudosime nedidele gudrybe. VBA Dir funkcija išgauti failo pavadinimą. Jei tokio failo nėra, Dir funkcija bus grąžinta nulinė eilutė.

 File_Name = Dir(File_Name) 

⧪ 3 veiksmas: tikrinimas, ar failas egzistuoja, naudojant "If" bloką

Tai svarbiausias žingsnis. Anksčiau sakėme, kad jei nurodyto pavadinimo failo nėra, funkcija Dir grąžina nulinę eilutę. Šią savybę naudosime per Jei blokas patikrinti, ar failas egzistuoja, ar ne.

 If File_Name = "" Then MsgBox "Failas neegzistuoja." Else MsgBox "Failas egzistuoja." End If 

Taigi visas VBA kodas bus:

VBA kodas:

 Sub Check_If_a_File_Exists() File_Name = "E:\ExcelWIKI\Book1.xlsm" File_Name = Dir(File_Name) If File_Name = "" Then MsgBox "Failas neegzistuoja." Else MsgBox "Failas egzistuoja." End If End Sub 

Išvestis:

Paleiskite kodą. Mano kompiuteryje bus rodomas pranešimo langas, "Failas egzistuoja" , nes jis iš tikrųjų egzistuoja mano kompiuteryje.

Jūsų kompiuteryje išvestis gali skirtis priklausomai nuo to, ar failas egzistuoja, ar ne.

Skaityti daugiau: "Excel VBA": patikrinkite, ar lapas egzistuoja (2 paprasti metodai)

Makrokomandos, skirtos patikrinti, ar failų diapazonas egzistuoja, kūrimas naudojant "Excel VBA

Čia turime duomenų rinkinį "Excel" darbalapyje, kuriame yra kai kurių failų pavadinimai ir katalogai, esantys diapazone B4:B8 .

Mūsų tikslas - sukurti makrokomandą, kuri rašytų Egzistuoja / Neegzistuoja šalia kiekvieno iš jų, patikrinę, ar jie egzistuoja kompiuteryje, ar ne.

⧪ 1 žingsnis: VBA lango atidarymas

Paspauskite ALT + F11 klaviatūroje, kad atidarytumėte "Visual Basic langas.

⧪ 2 žingsnis: naujo modulio įterpimas

Eikite į Insert> Modulis įrankių juostoje. Spustelėkite Modulis . Įdiegtas naujas modulis, vadinamas Modulis1 (arba bet kas kitas, priklausomai nuo jūsų ankstesnės istorijos).

⧪ 3 veiksmas: VBA kodo įvedimas

Tai yra svarbiausias žingsnis. Įterpkite VBA kodas modulyje.

VBA kodas:

 Sub Check_If_a_Range_of_File_Exist() Set Rng = ActiveSheet.Range("B4:B8") For i = 1 To Rng.Rows.Count File_Name = Dir(Rng.Cells(i, 1)) If File_Name = "" Then Rng.Cells(i, 2) = "Doesn't Exist" Else Rng.Cells(i, 2) = "Exists" End If Next i End Sub 

⧪ 5 veiksmas: kodo paleidimas

Spustelėkite Paleisti sub / UserForm įrankį iš pirmiau esančios įrankių juostos.

Kodas bus paleistas. Ir gausite "Egzistuoja" esamų failų ir "Neegzistuoja" neegzistuojantiems failams.

Skaityti daugiau: Kaip patikrinti, ar reikšmė egzistuoja "Excel" diapazone (8 būdai)

Išvada

Todėl tai yra procesas, skirtas sukurti Makro siųsti el. laišką iš "Excel" su priedu. Turite klausimų? Drąsiai klauskite mūsų. Ir nepamirškite apsilankyti mūsų svetainėje ExcelWIKI daugiau pranešimų ir atnaujinimų.

Hugh Westas yra labai patyręs Excel treneris ir analitikas, turintis daugiau nei 10 metų patirtį šioje srityje. Jis yra įgijęs apskaitos ir finansų bakalauro bei verslo administravimo magistro laipsnius. Hugh turi aistrą mokymui ir sukūrė unikalų mokymo metodą, kurį lengva sekti ir suprasti. Jo ekspertinės žinios apie „Excel“ padėjo tūkstančiams studentų ir specialistų visame pasaulyje tobulinti savo įgūdžius ir tobulėti savo karjeroje. Savo tinklaraštyje Hugh dalijasi savo žiniomis su pasauliu, siūlydamas nemokamus „Excel“ vadovėlius ir internetinius mokymus, kad padėtų asmenims ir įmonėms išnaudoti visą savo potencialą.