Vba: sayfalar istem veya uyarı olmadan nasıl silinir?
Bir çalışma kitabındaki belirli bir sayfayı silmek için VBA’da Sil yöntemini kullandığınızda, Excel, sayfayı silmek istediğinizden emin olup olmadığınızı soran bir bilgi istemi yayınlayacaktır.
Ancak bir sayfayı istem veya uyarı kutusu olmadan silmek için VBA’da aşağıdaki sözdizimini kullanabilirsiniz:
SubDeleteSheets ()
'turn off display alerts
Application.DisplayAlerts = False
'delete Sheet1
Sheets(" Sheet1 ").Delete
'turn back on display alerts
Application.DisplayAlerts = True
End Sub
Bu özel makro, Sayfa1 adlı sayfayı herhangi bir istem veya uyarı kutusu olmadan siler.
Application.DisplayAlerts=False satırı, VBA’ya Excel’deki tüm ekran uyarılarını kapatmasını söyler.
Daha sonra belirli bir sayfayı silmek için Sil yöntemini kullanırız.
Daha sonra uyarıları görüntülemeyi yeniden etkinleştirmek için Application.DisplayAlerts=True komutunu kullanırız.
Aşağıdaki örnek, bu sözdiziminin pratikte nasıl kullanılacağını gösterir.
Örnek: Bir sayfayı istem veya uyarı olmadan silmek için VBA’yı kullanın
Üç sayfa içeren aşağıdaki Excel çalışma kitabına sahip olduğumuzu varsayalım:
Şimdi Sheet1 adlı sayfayı silmek için bir makro oluşturmak istediğimizi varsayalım.
Aşağıdaki makroyu oluşturduğumuzu varsayalım:
SubDeleteSheets ()
'delete Sheet1
Sheets(" Sheet1 ").Delete
End Sub
Bu makroyu çalıştırdığımızda bu sayfayı silmek istediğimizden emin olup olmadığımızı soran bir mesaj alacağız:
Ancak Sayfa1’i herhangi bir komut istemeden silmek için aşağıdaki makroyu oluşturabiliriz:
SubDeleteSheets ()
'turn off display alerts
Application.DisplayAlerts = False
'delete Sheet1
Sheets(" Sheet1 ").Delete
'turn back on display alerts
Application.DisplayAlerts = True
End Sub
Bu makroyu çalıştırdığımızda Sheet1 isimli sayfa otomatik olarak siliniyor ve herhangi bir komut çıkmıyor:
Diğer iki sayfa sağlam kalırken Sayfa1’in silindiğini unutmayın.
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: birden fazla satır nasıl eklenir