Datei in VBA löschen

Iqra Hasnain 15 Februar 2024
  1. Datei in VBA löschen
  2. Löschen Sie eine einzelne Datei in VBA
  3. Löschen Sie alle Textdateien in VBA
  4. Löschen Sie alle Excel-Dateien in VBA
  5. Löschen Sie einen Ordner in VBA
Datei in VBA löschen

Wir werden verschiedene Methoden zum Löschen von Dateien mit VBA anhand von Beispielen vorstellen.

Datei in VBA löschen

Es ist normal, dass jeder Benutzer während eines Prozesses Zwischendateien hat, aber diese Dateien müssen gelöscht werden, nachdem der Prozess abgeschlossen ist. Beispielsweise erhalten wir oft E-Mails mit angehängten Dateien.

Diese Dateien sind für uns nur dann von Vorteil, wenn die Dateien bearbeitet werden müssen.

Diese Dateien sollten nach einiger Zeit gelöscht werden, da sie zusätzlichen Speicherplatz auf dem Computer (oder Laufwerk) belegen, der die Systemleistung beeinträchtigen kann.

Wenn wir versuchen, diese zusätzlichen Dateien manuell zu löschen, dauert es einige Zeit. Man kann sogar vergessen, solche Dateien zu löschen, wenn man beschließt, Zwischendateien in mehr als einer Sitzung zu löschen.

Einfache VBA-Codes können verwendet werden, um diese zusätzlichen Dateien zu löschen.

Mehrere Codes befassen sich mit den unterschiedlichen Methoden zum Löschen von Dateien. Einige der wichtigsten Codes sind:

  1. Löschen Sie eine einzelne Datei mit VBA.
  2. Löschen Sie alle Textdateien mit VBA.
  3. Löschen Sie alle Excel-Dateien mit VBA.
  4. Löschen Sie einen ganzen Ordner mit VBA.

Löschen Sie eine einzelne Datei in VBA

Es gibt zwei Methoden, um eine Excel-Datei zu löschen. Eine davon ist die Kill-Funktion namens FileSystemObject.

Lassen Sie uns ein Beispiel durchgehen und die Funktion Kill verwenden, um eine einzelne Datei zu löschen.

Sub DeleteFileWithKill()

Kill("D:/Test/testFile.xlsx")

End Sub

Vor dem Ausführen des Codes:

bevor Sie die Kill-Funktion in VBA verwenden, um eine einzelne Datei zu löschen

Nach dem Ausführen des Codes:

nachdem Sie die Kill-Funktion in VBA verwendet haben, um eine einzelne Datei zu löschen

Wie Sie am obigen Beispiel sehen können, ist es ganz einfach, eine Datei mit der Funktion kill zu löschen.

In der Methode FileSystemObject deklarieren wir zuerst Variablen, erstellen eine Objektfunktion, weisen den Pfad für die Datei zu und verwenden dann die Funktion DeleteFile. Der vollständige Code ist unten dargestellt.

Sub DeleteFileWithFSO()

Dim FileSysObj

Dim FileToDel As String

Set FileSysObj = CreateObject("Scripting.FileSystemObject")

FileToDel = "D:\Test\testFile.xlsx"

FileSysObj.DeleteFile FileToDel, True

End Sub

Vor dem Ausführen der Methode FileSystemObject:

bevor Sie die Kill-Funktion in VBA verwenden, um eine einzelne Datei zu löschen

Nach dem Ausführen der Methode FileSystemObject:

nachdem Sie die Kill-Funktion in VBA verwendet haben, um eine einzelne Datei zu löschen

Wenn wir die Existenz einer Datei überprüfen und sie dann löschen möchten, dann ist der VBA-Code unten.

Sub DeleteFileAfterChecking()

Dim FileSysObj

Dim FileToDelete As String

Set FileSysObj = CreateObject("Scripting.FileSystemObject")

FileToDelete = "D:\Test\testFile.xlsx"

If FileSysObj.FileExists(FileToDelete) Then

FileSysObj.DeleteFile FileToDelete, True
MsgBox "File Deleted"

Else
MsgBox "There is no file with the name you provided!"

End If
End Sub

Ausgang:

Löschen Sie eine Datei in vba, nachdem Sie überprüft haben, ob sie existiert oder nicht

Wie Sie im obigen Beispiel sehen können, können wir durch die Verwendung des FileSystemObject sogar sicherstellen, dass die Datei gelöscht wird, wenn die Datei existiert. Wenn es nicht vorhanden ist, können wir eine Meldung anzeigen, dass die Datei nicht existiert.

Löschen Sie alle Textdateien in VBA

Wir können auch VBA verwenden, um alle Dateien mit bestimmten Erweiterungen wie .txt zu löschen. Lassen Sie uns, wie unten gezeigt, ein Beispiel durchgehen und versuchen, alle in einem bestimmten Ordner vorhandenen .txt-Dateien zu löschen.

Sub DeleteTxtFile()
Kill "D:\Test\Dst\*.txt"
End Sub

Ausgabe vor dem Ausführen des Codes:

bevor Sie die Kill-Funktion in VBA verwenden, um alle Textdateien zu löschen

Ausgabe nach Ausführen des Codes:

nachdem Sie die Kill-Funktion in VBA verwendet haben, um alle Textdateien zu löschen

Löschen Sie alle Excel-Dateien in VBA

Wir können auch VBA verwenden, um alle Dateien mit bestimmten Erweiterungen wie .xlsx zu löschen. Gehen wir, wie unten gezeigt, ein Beispiel durch und versuchen, alle in einem bestimmten Ordner vorhandenen .xlsx-Dateien zu löschen.

Sub DeleteXlFile()
Kill "D:\Test\Dst\*.xlsx"
End Sub

Ausgabe vor dem Ausführen des Codes:

nachdem Sie die Kill-Funktion in VBA verwendet haben, um alle Textdateien zu löschen

Ausgabe nach Ausführen des Codes:

nachdem Sie die Kill-Funktion in VBA verwendet haben, um alle Excel-Dateien zu löschen

Löschen Sie einen Ordner in VBA

VBA bietet eine Lösung zum Löschen eines ganzen Ordners. Eine Funktion namens RmDir wird verwendet, um einen ganzen Ordner zu löschen.

Lassen Sie uns, wie unten gezeigt, ein Beispiel durchgehen und versuchen, den gesamten Ordner zu löschen.

Sub DeleteFolder()

RmDir "D:\Test\Dst\"

End Sub

Ausgabe vor dem Ausführen des Codes:

nachdem Sie die Kill-Funktion in VBA verwendet haben, um eine einzelne Datei zu löschen

Ausgabe nach Ausführen des Codes:

nach dem Löschen eines Ordners in vba

Verwandter Artikel - VBA File