Видалення файлу VBA | Як видалити файли в папці за допомогою коду VBA?

У VBA ми можемо видалити будь-який файл, що присутній на комп'ютері, використовуючи коди VBA, а код, який використовується для видалення будь-якого файлу, називається командою Kill, метод видалення будь-якого файлу полягає в тому, що спочатку ми надаємо шлях до файлу, що означає, де файл знаходиться в комп'ютері, а потім ми використовуємо команду Kill для видалення файлу.

Як видалити файли за допомогою коду VBA?

VBA - це важка справа на початку, але оскільки ви проводите більше часу з VBA, ви почнете любити її так само, як і я. Ми можемо відкривати файли з іншої папки на комп’ютері, ми можемо з ними працювати, а тепер також можемо видаляти файли за допомогою кодування VBA. У цій статті ми покажемо, як можна видалити файли за допомогою коду VBA у певній папці.

Коли ми працюємо з великими проектами, ми зазвичай створюємо багато проміжних файлів для підтримки нашого процесу. Після закінчення всієї роботи нам потрібно видалити ці файли, щоб уникнути будь-якої плутанини в майбутньому.

І один із сценаріїв - коли ми зазвичай отримуємо електронне повідомлення, ми зберігаємо вкладення для нашої звичайної роботи, або ми просто хочемо переглянути звіт за цей момент часу, і пізніше нам може знадобитися видалити ці файли.

Видалення цих файлів вручну займе час, або ми можемо забути зберегти, і це займе місце на нашому комп’ютері. Ми покажемо вам, як видалити ці файли за допомогою простих кодів VBA.

Метод вбивства для видалення файлів у папці за допомогою коду VBA

Проста функція KILL видалить папку, певний файл, усі файли Excel тощо. Погляньте на синтаксис методу KILL у VBA. Метод вбивства не може видалити файли лише для читання.

Ім'я шляху : шлях - це не що інше, як шлях до папки на комп'ютері для видалення файлів.

Примітка: Назва шляху може також містити символи підстановки. Ми можемо використовувати зірочку (*) та знаки запитання (?) Як символи підстановки в Excel.

Зірочка (*) корисна для відповідності будь-якому рядку будь-якої довжини, навіть якщо вважати нуль.

Знак питання (?) Корисний для відповідності лише одному символу.

Видалити конкретну назву файлу

Наприклад, у мене є папка, як показано нижче.

У цій папці я хочу видалити файл із назвою „Файл 5”. Запустіть код за допомогою функції KILL.

Код:

 Sub Delete_Files () Вбивство (PathName) Кінець Sub 

Скопіюйте та вставте шлях до папки.

І вставте в подвійні лапки.

Убити "E: \ Файли Excel"

Тепер поставте ще одну косу риску (\) і введіть ім'я файлу з розширенням.

Вбийте "E: \ Excel Files \ File5.xlsx"

Після запуску цього коду він видалить файл із назвою «Файл 5.xlsx» у згаданому шляху до папки.

Видалити всі файли Excel

Щоб видалити всі файли excel у папці за допомогою VBA, нам потрібно використовувати символи підстановки з функцією KILL. Згадавши шлях до папки, нам потрібно згадати файл як “* .xl *”

Код:

Вбийте "E: \ Файли Excel \ *. Xl *"

Після запуску цього коду буде видалено всі файли excel у папці.

Ми побачили, як можна видалити один файл Excel та всі файли Excel. Але якщо ми хочемо видалити всі файли в папці, як ми можемо їх видалити. Оскільки ми використовуємо Excel VBA, чи може він видалити інші файли?

Відповідь - так !!! Використовуйте наведений нижче код, щоб видалити всі файли в папці.

Код:

Убийте "E: \ Файли Excel \ *. *"

Видалити лише всю папку

Чи можна видалити всю саму папку?

Так, це можливо.

To do this, the first thing we need to do is we need to delete all the files in the folder by using KILL function, and then to delete folder we need to use one more function called RmDir.

Code:

RmDir "E:\Excel Files\"

Here RmDir will delete only the empty folder, if any subfolder is there it cannot delete them.

Delete All the Text Files in the Folder

To delete all the text files in the folder use the below code.

Code:

Kill "E:\Excel Files\*.txt"

Delete Read-Only Files

As I told KILL function cannot delete “Read Only” files in the folder. In such a case scenario we need to use the other two functions “Dir$” & “SetAttr” functions. Below is the example code to delete the read-only files as well.

Code:

 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