A VBA-ban a számítógépen található fájlokat törölhetjük VBA-kódok segítségével, és a fájlok törléséhez használt kódot Kill parancsnak nevezzük. A fájlok törlésének módja az, hogy először a fájl elérési útját adjuk meg, ami azt jelenti, hogy hol a fájl a számítógépen található, majd a Kill paranccsal töröljük a fájlt.
Hogyan lehet fájlokat törölni a VBA kód segítségével?
Az elején a VBA a kemény dolog, de mivel több időt töltesz a VBA-val, úgy szeretsz szeretni, mint én. Megnyithatunk fájlokat a számítógép másik mappájából, dolgozhatunk velük, és most a VBA kódolással fájlokat is törölhetünk. Ebben a cikkben megmutatjuk, hogyan törölheti a fájlokat az adott mappában található VBA kód segítségével.
Amikor nagy projektekkel dolgozunk, általában sok köztes fájlt hozunk létre a folyamatunk támogatása érdekében. Miután minden munkát elvégeztünk, törölnünk kell ezeket a fájlokat, hogy elkerüljük a jövőbeni zavart.
És az egyik forgatókönyv az, amikor általában kapunk egy e-mailt, mellékleteket mentünk el a szokásos munkánkhoz, vagy csak meg akarjuk tekinteni a jelentést az adott időpontra, és később előfordulhat, hogy törölnünk kell ezeket a fájlokat.
Ezeknek a fájloknak a manuális törlése időbe telik, vagy elfelejthetjük a mentést, és elfoglalja a helyet a számítógépünkön. Megmutatjuk, hogyan törölheti ezeket a fájlokat egyszerű VBA kódokkal.
Ölési módszer a mappában lévő fájlok törléséhez a VBA kód használatával
Egy egyszerű KILL funkció törli a mappát, egy adott fájlt, az összes Excel fájlt stb. Vessen egy pillantást a VILL KILL metódusának szintaxisára. A Kill módszerrel nem lehet csak olvasható fájlokat törölni.
Útvonal neve: az elérési út nem más, mint a számítógépen található mappaútvonal a fájlok törléséhez.
Megjegyzés: Az útvonal neve tartalmazhat helyettesítő karaktereket is. Használhatunk csillagot (*) és kérdőjeleket (?) Helyettesítő karakterként az excelben.
A csillag (*) akkor hasznos, ha bármilyen hosszúságú karakterláncot megegyezünk, akár nulla is.
A kérdőjel (?) Csak egyetlen karakter egyezéséhez hasznos.
Adott fájlnév törlése
Például van egy mappám, mint az alábbiak.
Ebben a mappában törölni szeretném a „File 5” névre keresztelt fájlt. Indítsa el a kódot a KILL funkcióval.
Kód:
Sub Delete_Files () Kill (PathName) End Sub
Másolja és illessze be a mappa elérési útját.
És illessze be dupla idézőjelbe.
Öld meg az "E: \ Excel Files"
Most tegyen még egy perjelet (\), és írja be a fájl nevét kiterjesztéssel.
Öld meg az "E: \ Excel Files \ File5.xlsx" fájlt
Amikor futtatja ezt a kódot, a fájl törli a „File 5.xlsx” nevű fájlt az említett mappaútvonalból.
Az összes Excel fájl törlése
A mappában lévő összes excel fájl VBA használatával történő törléséhez helyettesítő karaktereket kell használnunk KILL funkcióval. A mappa elérési útjának megemlítése után meg kell említenünk a fájlt „* .xl *” néven
Kód:
Öld meg az "E: \ Excel Files \ *. Xl *"
Amikor futtatja ezt a kódot, ez törli az összes excel fájlt a mappából.
Láttuk, hogyan lehet törölni egyetlen Excel fájlt és az összes Excel fájlt. De ha törölni akarjuk az összes fájlt a mappából, hogyan törölhetjük. Mivel Excel VBA-t használunk, törölhet más fájlokat?
A válasz igen!!! Az alábbi kód segítségével törölheti a mappa összes fájlját.
Kód:
Öld meg az "E: \ Excel Files \ *. *"
Csak a teljes mappa törlése
Lehetséges törölni magát a teljes mappát?
Igen, lehetséges.
Ehhez első lépésként törölnünk kell a mappában található összes fájlt a KILL funkció segítségével, majd a mappa törléséhez még egy RmDir nevű függvényt kell használnunk .
Kód:
RmDir "E: \ Excel Files \"
Itt az RmDir csak az üres mappát fogja törölni, ha almappák vannak, nem tudja törölni őket.
Az összes szövegfájl törlése a mappából
A mappában található összes szövegfájl törléséhez használja az alábbi kódot.
Kód:
Öld meg az "E: \ Excel Files \ *. Txt"
Csak olvasható fájlok törlése
Mint mondtam, a KILL funkció nem tudja törölni a „Csak olvasható” fájlokat a mappából. Ilyen esetben a másik két „Dir $” és „SetAttr” függvényt kell használnunk. Az alábbiakban a csak olvasható fájlok törlésére szolgáló példakód található.
Kód:
Sub Delete_Files1() Dim DeleteFile As String DeleteFile = " E:\Excel Files\" If Len(Dir$(DeleteFile)) > 0 Then SetAttr DeleteFile, vbNormal Kill DeleteFile End If End Sub
You can download this VBA Delete File Excel Template from here – VBA Delete File Excel Template