Bagaimana cara menghapus file menggunakan vba di excel?
Untuk menghapus file Excel dari folder, Anda bisa menggunakan dua metode berbeda. Metode pertama adalah pernyataan “Bunuh” yang mengambil jalur file untuk mereferensikan file yang ingin Anda hapus. Metode kedua adalah objek FileSystemObject yang memiliki metode terkait untuk menghapus file.
Untuk menggunakan kode-kode ini, buka VBE (Code Editor) dari tab pengembang.
Hapus file menggunakan VBA (fungsi Kill)
Fitur kill membantu Anda menghapus satu file atau beberapa file dan menggunakan wildcard untuk menghapus banyak file. Di bawah ini adalah satu baris kode yang menghapus file dari folder yang saya miliki di desktop.
Kill "C:UsersDellDesktopSample Datafile-one.xlsx"
Kode ini akan menampilkan kesalahan jika buku kerja yang Anda tentukan untuk dihapus tidak ada.
Tautan yang berguna: Jalankan makro – Perekam makro – Editor Visual Basic – Buku Pegangan Makro Pribadi
Hapus semua file dalam satu folder menggunakan VBA
Dan jika Anda ingin menghapus semua file yang ada dalam satu folder, Anda dapat menggunakan wildcard.
Kill "C:UsersDellDesktopSample Data*.xl*"
Hapus file menggunakan FileSystemObject (Objek)
Objek sistem file memungkinkan Anda mengakses sistem file komputer. Anda dapat mempelajari lebih lanjut dari sini, tapi sekarang mari kita menulis kode untuk menghapus file.
- Pertama, Anda perlu mendeklarasikan variabel yang akan digunakan dalam kode sebagai Binder dan FileSystemObject.
- Setelah itu, gunakan fungsi buat objek untuk mengembalikan FileSystemObject dengan menugaskannya ke variabel FSO.
- Selanjutnya, tetapkan jalur ke variabel “myFile” untuk menavigasi ke file yang ingin Anda hapus.
- Terakhir, gunakan metode “DeleteFile” (lihat ini) untuk menghapus file.
Kode lengkap
Sub vba_delete_file() Dim FSO Dim myFile As String Set FSO = CreateObject("Scripting.FileSystemObject") myFile = "C:UsersDellDesktopSample Datafile1.xlsx" FSO.DeleteFile myFile, True End Sub
Katakanlah Anda perlu menulis beberapa kode yang dapat memeriksa suatu file (ada atau tidak) dan kemudian menghapusnya. Ini kode yang Anda butuhkan.
Sub vba_delete_file() Dim FSO Dim myFile As String Set FSO = CreateObject("Scripting.FileSystemObject") myFile = "C:UsersDellDesktopSample Datafile1.xlsx" If FSO.FileExists(myFile) Then FSO.DeleteFile myFile, True MsgBox "Deleted" Else MsgBox "There's no workbook with this name." End If End Sub