Diskdagi bo'sh joyni egallagan bir nechta kiruvchi va foydalanilmagan fayllar bo'lishi mumkin. Ushbu fayllarni tozalash juda katta vazifa bo'lishi mumkin. Excel yordamida siz bunday foydalanilmagan fayllarni osongina topishingiz va diskda bo'sh joyni bo'shatish uchun ularni bir zumda o'chirishingiz mumkin.
Hozir yuklab olmoq
Agar siz dasturiy ta'minotdan iloji boricha tezroq foydalanishni boshlamoqchi bo'lsangiz, unda quyidagilarni qilishingiz mumkin:
Dasturiy ta'minotni hozir yuklab oling
Aks holda, agar siz DIY qilishni istasangiz, quyidagi tarkibni o'qishingiz mumkin.
GUI ni tayyorlaylik
Ish kitobidan keraksiz varaqlarni olib tashlang va 1-varaq nomini GUI sifatida o'zgartiring va ish kitobini so'l bilan ishlaydigan ish kitobi sifatida saqlang. Ilova qilingan rasmda ko'rsatilganidek, varaqda ikkita tugma yarating va 1-tugmaning nomini "Browse" deb o'zgartiring va 2-tugmaning nomini "Fayllarni o'chirish" deb o'zgartiring. Fayl yo'lini joylashtirish uchun kattaroq ustun yaratish uchun bir nechta ustunlarni birlashtirishingiz yoki bitta ustunning kengligini oshirishingiz mumkin.
Keling, uni funksional holga keltiraylik
Skriptni so'l bilan ishlaydigan ish kitobingizdagi yangi modulga nusxalang. Iltimos, modul nomi Module1 bo'lishi kerakligiga ishonch hosil qiling. Aks holda, skript xatoga yo'l qo'yadi. “Scan_This_Folder” skriptini “Browse” tugmasiga va “Delete_Files” protsedurasi “Fayllarni o‘chirish” tugmasiga biriktirilishi kerak.
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
Bu qanday ishlaydi?

Buzing
Hozircha skript tanlangan jilddagi fayllarni skanerlaydi. Agar tanlangan jild ichida pastki papkalar bo'lsa, skript uni skanerlay olmaydi. Siz ildiz papkasidagi barcha pastki papkalarni skanerlash uchun skriptni o'zgartirishingiz mumkin, shuningdek, fayllarning "So'nggi o'zgartirilgan sanasini" joriy sana bilan solishtirish va kunlarni ko'rsatish uchun yangi ustun yaratishingiz mumkin. Keyin kunlar soniga qarab fayllarni avtomatik ravishda o'chirish uchun skriptni sozlashingiz mumkin. Skript Microsoft-ning fayl skriptlash texnikasidan foydalansa-da, faylning xususiyatlari shikastlangan xlsx fayllarni qaytarib bo'lmaydi.
Muallif kirish:
Nik Vipond - ma'lumotlarni qayta tiklash bo'yicha mutaxassis DataNumenMa'lumotlarni qayta tiklash texnologiyalari bo'yicha jahon yetakchisi bo'lgan , Inc so'zni tiklash va istiqbolni tiklash dasturiy mahsulotlar. Qo'shimcha ma'lumot olish uchun tashrif buyuring www.datanumen.com.