Vba kullanılarak klasörler nasıl silinir (örneklerle)
Klasörleri silmek için VBA’da aşağıdaki yöntemleri kullanabilirsiniz:
Yöntem 1: Klasördeki tüm dosyaları silin
Sub DeleteFolderContents()
On Error Resume Next
Kill “ C:\Users\bobbi\Desktop\My_Data\*.* ”
On Error GoTo 0
End Sub
Bu özel makro, My_Data adlı klasördeki tüm dosyaları silecektir.
Yöntem 2: klasörün tamamını silin
SubDeleteFolder ()
On Error Resume Next
'delete all files in folder
Kill “ C:\Users\bobbi\Desktop\My_Data\*.* ”
'delete empty folder
RmDir " C:\Users\bobbi\Desktop\My_Data\ "
On Error GoTo 0
End Sub
Bu özel makro, My_Data klasörünün tamamını silecek ve böylece artık mevcut olmayacaktır.
Hata Durumunda Devam Etme Sonraki satırı, VBA’ya bir hata oluşursa ve klasör bulunamazsa hiçbir hata mesajı görüntülenmemesi gerektiğini söyler.
Daha sonra hata mesajlarını varsayılan ayarlara sıfırlamak için On Error GoTo 0’ı kullanırız.
Klasör bulunamazsa hata mesajı görüntülenmesini istiyorsanız bu iki satırı koddan kaldırmanız yeterlidir.
Aşağıdaki örnekler, üç Excel dosyası içeren My_Data adlı aşağıdaki klasörle her yöntemin pratikte nasıl kullanılacağını gösterir:
Örnek 1: VBA Kullanarak Klasördeki Tüm Dosyaları Silme
Diyelim ki My_Data adlı klasördeki tüm dosyaları silmek için VBA’yı kullanmak istiyoruz.
Bunun için aşağıdaki makroyu oluşturabiliriz:
Sub DeleteFolderContents()
On Error Resume Next
Kill “ C:\Users\bobbi\Desktop\My_Data\*.* ”
On Error GoTo 0
End Sub
Bu makroyu çalıştırıp klasörü tekrar açtığımızda tüm dosyaların silindiğini göreceğiz:
Örnek 2: VBA kullanarak bir klasörün tamamını silin
Artık var olmayacak şekilde My_Data adlı klasörün tamamını silmek için VBA’yı kullanmak istiyorsanız, aşağıdaki makroyu oluşturabilirsiniz:
SubDeleteFolder ()
On Error Resume Next
'delete all files in folder
Kill “ C:\Users\bobbi\Desktop\My_Data\*.* ”
'delete empty folder
RmDir " C:\Users\bobbi\Desktop\My_Data\ "
On Error GoTo 0
End Sub
Bu makroyu çalıştırıp Dosya Gezgini’ni açtığımızda My_Data adlı klasörün artık mevcut olmadığını göreceğiz:
Ek kaynaklar
Aşağıdaki eğitimlerde VBA’da diğer ortak görevlerin nasıl gerçekleştirileceği açıklanmaktadır:
VBA: Bir çalışma kitabındaki sayfaların sayısı nasıl sayılır?
VBA: Başka bir çalışma kitabından veri nasıl çıkarılır
VBA: Ad belirli bir metin içeriyorsa bir sayfa nasıl silinir