Добрый день, уважаемые читатели блога! Как водится, сегодня мы поговорим о программе Excel, но в не совсем привычной для нас функции — файловом менеджере. Постараюсь ответить на вопрос — может ли Excel с помощью макросов удалять файлы?
Ответ однозначный — да. Для этого в языке VBA есть специальный оператор — kill. Для нас он и представляет определённый интерес.
Давайте посмотрим как его можно использовать. Имеется папка (в моём примере это C:\Для всех), её нужно очистить от файлов с расширением *.xlsx.
Создадим новую книгу и, как обычно, добавим в неё стандартный модуль. Мы рассматривали этот алгоритм в предыдущих статьях.
- вкладка «Разработчик», кнопка «Visual basic»;
- вставляем новый модуль и помещаем следующий код макроса.
Sub DF()
‘ Удаление всех файлов из папки с расширением .xlsx
Kill «C:\Для всех\» & «*.xlsx»
End Sub
Только просьба - кавычки в макросе заменить на "!!!
Будьте внимательны — макрос не удаляет файлы в «Корзину», а полностью стирает их с жёсткого диска компьютера!
Аналогично сочетанию клавиш Shift+Delete.
Проверим работоспособность нашего кода. Запустим окно выбора макросов комбинацией клавиш Alt+F8 и нажмём «Выполнить».
Результат на лицо — в папке остался только один файл «Изменение листа.xlsm» потому что у него разрешение не совпадает с указанным в макросе.
Также хочется отметить, что привычное сочетание клавиш Ctrl+Z не поможет восстановить файлы.
Необходимая оговорка — макрос можно использовать для всех типов файлов. Для этого необходимо изменить в макросе расширение *.xlsx на нужное для удаления вам.