VBA Dosyayı Sil - Klasördeki Dosyalar VBA Koduyla Nasıl Silinir?

VBA'da VBA kodlarını kullanarak bilgisayarda bulunan herhangi bir dosyayı silebiliriz ve herhangi bir dosyayı silmek için kullanılan kod Kill komutu olarak bilinir, herhangi bir dosyayı silme yöntemi ilk önce, dosyanın yolunu sağlarız, yani nerede dosya bilgisayarda bulunur ve ardından dosyayı silmek için Kill komutunu kullanırız.

VBA Kodu Kullanılarak Dosyalar Nasıl Silinir?

VBA başlangıçta zor bir şey ama VBA ile daha fazla vakit geçirdikçe onu benim gibi sevmeye başlayacaksınız. Bir bilgisayarın başka bir klasöründeki dosyaları açabiliriz, onlarla çalışabiliriz ve artık VBA kodlamasını kullanarak dosyaları da silebiliriz. Bu makalede, belirli klasördeki VBA Kodunu kullanarak dosyaları nasıl silebileceğinizi göstereceğiz.

Büyük projelerle çalışırken, sürecimizi desteklemek için genellikle çok sayıda ara dosya oluştururuz. Tüm çalışmalar tamamlandıktan sonra, gelecekte herhangi bir karışıklığı önlemek için bu dosyaları silmemiz gerekir.

Ve bir senaryo, genellikle bir e-posta aldığımız zamandır. Ekleri normal çalışmamız için kaydederiz veya sadece o an için raporu görmek isteriz ve daha sonra bu dosyaları silmemiz gerekebilir.

Bu dosyaları manuel olarak silmek zaman alacaktır veya kaydetmeyi unutabiliriz ve bilgisayarımızdaki alanı kaplar. Bu dosyaları basit VBA kodlarıyla nasıl sileceğinizi göstereceğiz.

VBA Kodunu Kullanarak Bir Klasördeki Dosyaları Silmek İçin Öldürme Yöntemi

Basit bir KILL işlevi klasörü, belirli bir dosyayı, tüm excel dosyalarını vb. Siler. VBA'daki KILL yönteminin sözdizimine bir göz atın. Kill yöntemi salt okunur dosyaları silemez.

Yol Adı: yol adı, dosyaları silmek için bilgisayardaki klasör yolundan başka bir şey değildir.

Not: Yol adı joker karakterleri de içerebilir. Excel'de joker karakter olarak yıldız (*) ve soru işaretleri (?) Kullanabiliriz.

Yıldız işareti (*), sıfır kabul edilse bile, herhangi bir uzunluktaki herhangi bir dizeyle eşleşmek için kullanışlıdır.

Soru işareti (?) Yalnızca tek bir karakterle eşleşmek için kullanışlıdır.

Belirli Dosya Adını Silin

Örneğin aşağıdaki gibi bir klasörüm var.

Bu klasörde “Dosya 5” isimli dosyayı silmek istiyorum. Kodu KILL işleviyle başlatın.

Kod:

Sub Delete_Files () Kill (PathName) End Sub

Klasör yolunu kopyalayıp yapıştırın.

Ve çift tırnak içine yapıştırın.

"E: Excel Dosyaları" nı sonlandırın

Şimdi bir tane daha geriye doğru eğik çizgi () koyun ve dosya adını uzantı ile girin.

"E: Excel Files File5.xlsx" i sonlandırın

Bu kodu çalıştırdığınızda, belirtilen klasör yolundaki “Dosya 5.xlsx” adlı dosyayı silecektir.

Tüm Excel Dosyalarını Sil

Klasördeki tüm excel dosyalarını VBA kullanarak silmek için, KILL işlevi ile joker karakterler kullanmamız gerekir. Klasör yolundan bahsettikten sonra, dosyadan "* .xl *" olarak bahsetmemiz gerekiyor.

Kod:

"E: Excel Dosyaları *. Xl *" dosyasını sonlandırın

Bu kodu çalıştırdığınızda, bu klasördeki tüm excel dosyalarını silecektir.

Tek bir excel dosyasını ve tüm excel dosyalarını nasıl silebileceğimizi gördük. Ancak klasördeki tüm dosyaları silmek istersek onu nasıl silebiliriz. Excel VBA kullandığımız için diğer dosyaları silebilir mi?

Cevap Evet!!! Klasördeki tüm dosyaları silmek için aşağıdaki kodu kullanın.

Kod:

"E: Excel Files *. *" I sonlandırın

Yalnızca Klasörün Tamamını Sil

Klasörün tamamını silmek mümkün müdür?

Evet mümkün.

Bunu yapmak için ilk yapmamız gereken şey, KILL işlevini kullanarak klasördeki tüm dosyaları silmemiz ve ardından klasörü silmemiz ve RmDir adında bir işlev daha kullanmamız gerekiyor .

Kod:

RmDir "E: Excel Dosyaları "

Burada RmDir , herhangi bir alt klasörün silemediği yerdeyse yalnızca boş klasörü siler.

Klasördeki Tüm Metin Dosyalarını Silin

Klasördeki tüm metin dosyalarını silmek için aşağıdaki kodu kullanın.

Kod:

"E: Excel Dosyaları *. Txt" dosyasını sonlandırın

Salt Okunur Dosyaları Sil

Dediğim gibi KILL işlevi klasördeki “Salt Okunur” dosyaları silemiyor. Böyle bir durum senaryosunda, diğer iki işlevi "Dir $" ve "SetAttr" işlevlerini kullanmamız gerekir. Aşağıda salt okunur dosyaları da silmek için örnek kod verilmiştir.

Kod:

Sub Delete_Files1 () Sil DeleteFile As String DeleteFile = "E: Excel Dosyaları " Eğer Len (Dir $ (DeleteFile))> 0 ise Sonra SetAttr DeleteFile, vbNormal Kill DeleteFile End If End Sub

Bu VBA Dosya Sil Excel Şablonunu buradan indirebilirsiniz - VBA Dosyayı Sil Excel Şablonu.

Ilginç makaleler...