VBA-Programmierung in Microsoft Excel

Tutorial: Excel-Beispiele

Alle Dateien löschen, die älter als 30 Tage sind

Gruppe

Datei

Bereich

Arbeitsmappe

Thema

Alle Dateien löschen, die älter als 30 Tage sind

Problem

Aus dem in Zelle B1 genannten Verzeichnis sollen alle Excel-Dateien gelöscht werden, dere letztes Bearbeitungsdatum mehr als 30 Tage zurückliegt.

Lösung

Geben Sie den nachfolgenden Code in ein Standardmodul ein und weisen Sie ihn einer Schaltfläche zu.




StandardModule: Modul1

Sub DateiLöschen()
   Dim sPath As String
   Dim iCount As Integer, iCounter As Integer
   sPath = Range("B1").Value
   If MsgBox("Sollen die Dateien tatsächlich gelöscht werden?", _
      vbCritical + vbYesNo) = vbNo Then Exit Sub
   iCount = 30
   With Application.FileSearch
      .LookIn = sPath
      .Filename = "*.xls"
      .Execute
      For iCounter = 1 To .FoundFiles.Count
         If FileDateTime(.FoundFiles(iCounter)) + 30 < Date Then
            Kill .FoundFiles(iCounter)
         End If
      Next iCounter
   End With
End Sub

    


Beiträge aus dem Excel-Forum zu den Themen Datei und Arbeitsmappe