Paano Mag-batch Tanggalin ang Maramihang Hindi Ginustong o Hindi Ginamit na Mga File sa Excel VBA

Ipamahagi ngayon:

Maaaring maraming mga hindi nais at hindi nagamit na mga file na kumakain ng iyong puwang sa disk. Ang paglilinis ng mga file na ito ay maaaring isang malaking gawain. Sa excel, madali mong mahahanap ang mga hindi nagamit na file at agad na tatanggalin ang mga ito sa libreng puwang ng disk.

Download na Ngayon

Kung gusto mong simulan ang paggamit ng software sa lalong madaling panahon, maaari mong:

I-download ang Software Ngayon

Kung hindi man, kung nais mong DIY, maaari mong basahin ang mga nilalaman sa ibaba.

Ihanda na natin ang GUI

Alisin ang mga hindi ginustong sheet mula sa workbook at palitan ang pangalan ng Sheet 1 bilang GUI at i-save ang workbook bilang workbook na pinapagana ng macro. Tulad ng ipinakita sa naka-attach na imahe, lumikha ng dalawang mga pindutan sa sheet at palitan ang pangalan ng Button 1 bilang "Mag-browse" at palitan ang pangalan ng Button 2 bilang "Tanggalin ang Mga File". Maaari mong pagsamahin ang maramihang mga haligi upang lumikha ng isang mas malaking haligi upang mapaunlakan ang file path o maaari mong dagdagan ang lapad ng isang solong haligi.Ihanda Ang GUI

Gawin nating pagpapaandar ito

Kopyahin ang script sa isang bagong module sa iyong workbook na pinagana ang macro. Mangyaring tiyakin na ang pangalan ng modyul ay dapat na Modyul1. Kung hindi man, magtatapon ng error ang script. Ikabit ang script na "Scan_This_Folder" sa pindutang "Mag-browse" at ang pamamaraan na "Delete_Files" ay dapat na naka-attach sa pindutang "Tanggalin ang Mga File".

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.GetFolder(scanthis)
    i = 7
    For Each v_var3 In 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(1)
    End With
NextCode:
    scanthisfolder = v2
    Set v1 = Nothing
End Function

Sub Scan_This_Folder()
    Range("B3").Value = scanthisfolder()
    Call Module1.filefordelete
End Sub

Paano ito gumagana?

VBA codeKapag pumipili ang gumagamit ng isang folder, binabasa ng script ang lahat ng mga file sa loob ng napiling folder at ipinapakita ang pangalan ng file kasama ang huling binagong petsa. I-verify ang listahan, alisin ang mga hilera kung nais mong panatilihin ang file at pagkatapos ay i-click ang pindutang "Tanggalin ang Mga File". Makikilala na ng script ang huling ginamit na hilera at tatanggalin ang mga file na nagbabasa ng file path mula sa sheet.

Sabunutan ito

Tulad ng ngayon, sinusuri ng script ang mga file sa loob ng napiling folder. Kung may mga subfolder sa loob ng napiling folder, hindi ito mai-scan ng script. Maaari mong i-tweak ang script upang mai-scan ang lahat ng mga subfolder sa loob ng root folder at lumikha din ng isang bagong haligi upang ihambing ang "Huling Nabago na Petsa" ng mga file sa kasalukuyang petsa at ipakita ang Mga Araw. Maaari mo nang mai-tweak ang script upang awtomatikong tanggalin ang mga file batay sa bilang ng mga araw. Kahit na ang script ay gumagamit ng diskarteng diskarte ng file ng Microsoft, mga katangian ng file ng nasira xlsx hindi makuha ang mga file.

Panimula ng May-akda:

Si Nick Vipond ay isang dalubhasa sa pagbawi ng data sa DataNumen, Inc., na pinuno ng mundo sa mga teknolohiya sa pagbawi ng data, kasama ang mabawi ang salita at pananaw sa mga produkto ng software sa pagbawi. Para sa karagdagang impormasyon pagbisita www.datanumen. Sa.

Ipamahagi ngayon:

Mga komento ay sarado.