Cum să ștergeți în lot mai multe fișiere nedorite sau neutilizate cu Excel VBA

Este posibil să existe mai multe fișiere nedorite și neutilizate care vă consumă spațiul pe disc. Curățarea acestor fișiere ar putea fi o sarcină uriașă. Cu excel, puteți găsi cu ușurință astfel de fișiere neutilizate și le puteți șterge instantaneu pentru a elibera spațiu pe disc.

Descarcă acum

Dacă vrei să starPentru a utiliza software-ul cât mai curând posibil, atunci puteți:

Descărcați software-ul acum

În rest, dacă vrei să faci DIY, poți citi conținutul de mai jos.

Să pregătim GUI

Eliminați foile nedorite din registrul de lucru și redenumiți Foaia 1 ca GUI și salvați registrul de lucru ca registru de lucru activat pentru macro-uri. După cum se arată în imaginea atașată, creați două butoane pe foaie și redenumiți butonul 1 ca „Răsfoiți” și redenumiți butonul 2 ca „Ștergeți fișierele”. Puteți fie îmbina mai multe coloane pentru a crea o coloană mai mare care să găzduiască calea fișierului, fie puteți crește lățimea unei singure coloane.Pregătiți GUI

Să-l facem funcțional

Copiați scriptul într-un modul nou din registrul de lucru cu macrocomenzi. Asigurați-vă că numele modulului trebuie să fie Module1. În caz contrar, scriptul va genera o eroare. Atașați scriptul „Scan_This_Folder” la butonul „Browse” și procedura „Delete_Files” ar trebui să fie atașată la butonul „Delete Files”.

Sub filefordelete() Dim v_var1 As Scripting.FileSystemObject Dim v_var2 As Scripting.Folder Dim v_var3 As Scripting.File scanthis = Range("B3").Text Set v_var1 = New Scripting.FileSystemObject Set v_var2 = v_var1)(s. 7 Pentru fiecare v_var3 În v_var2.Files Cells(i, 2) = v_var3 Cells(i, 11) = v_var3.DateLastModified i = i + 1 Next v_var3 Set v_var1 = Nothing End Sub Sub Delete_Files() Dim lr As Long Dim r As Long lr = Range("B" & Rows.Count).End(xlUp).Row For r = 7 To lr Kill Range("B" & r).Value Next r End Sub Function scanthisfolder() As String Dim v1 As FileDialog Dim v2 As String Set v1 = Application.FileDialog(msoFileDialogFolderPicker) With v1 .Title = "Folder to scan for files" .AllowMultiSelect = False If .Show <> -1 Then GoTo NextCode v2 = .SelectedItems With Next(1) End : scanthisfolder = v2 Set v1 = Nothing End Function Sub Scan_This_Folder() Range("B3").Value = scanthisfolder() Apel Module1.filefordelete End Sub

Cum functioneaza?

Cod VBACând utilizatorul selectează un folder, scriptul citește toate fișierele din folderul selectat și afișează numele fișierului împreună cu data ultimei modificări. Verificați lista, eliminați rândurile dacă doriți să păstrați fișierul și apoi faceți clic pe butonul „Șterge fișierele”. Scriptul va identifica acum ultimul rând folosit și va șterge fișierele care citesc calea fișierului din foaie.

Ajustați-l

Începând de acum, scriptul scanează fișierele din folderul selectat. Dacă există subdosare în folderul selectat, scriptul nu îl poate scana. Puteți modifica scriptul pentru a scana toate subfolderele din folderul rădăcină și, de asemenea, puteți crea o nouă coloană pentru a compara „Data ultimei modificări” a fișierelor cu data curentă și pentru a afișa zilele. Apoi puteți modifica scriptul pentru a șterge automat fișierele în funcție de numărul de zile. Deși scriptul folosește tehnica de scriptare a fișierelor Microsoft, proprietățile fișierului xlsx deteriorat fișierele nu pot fi preluate.

Introducerea autorului:

Nick Vipond este un expert în recuperarea datelor DataNumen, Inc., care este lider mondial în tehnologiile de recuperare a datelor, inclusiv recupera cuvântul și produse software de recuperare Outlook. Pentru mai multe informații vizitați www.datanumen.com.

Un răspuns la „Cum să ștergeți în loturi mai multe fișiere nedorite sau neutilizate cu Excel VBA”

Lasă un comentariu

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate *