Belirli bir makroyu her çalıştırdığımda çoğunun silineceği çok çalışma sayfası olan bir çalışma kitabım var. Silinecek çalışma sayfalarının sayısı 1 ile 150 arasında değişir.Çoklu çalışma sayfalarını silmek için daha hızlı yöntem
Şu anda aşağıdaki makro bölümünün bölümü, 78 çalışma sayfasını silmek için yaklaşık 215 saniyedir. Daha hızlı yapmanın bir yolu var mı? 60'lardan az sayıda benzer çalışma sayfası için çalışma zamanı var mı?
For Each WrkSh In MainFile.Worksheets
If WrkSh.Index > 5 Then
WrkSh.Delete
End If
Next WrkSh
MainFile.Sheets("Input").Unprotect
MainFile.Sheets("Buyers").Unprotect
MainFile.Sheets("Template").Visible = True
MainFile.Sheets("Holidays").Visible = True
With MainFile.Sheets("Input")
.Range("A10:A200").ClearContents
.Range("E11:N200").Clear
End With
With MainFile.Sheets("Buyers")
.Range("A10:B40").ClearContents
.Range("C11:J40").Clear
End With
DÜZENLEME:
İşte kodun ilgili bölümdür Ben ana kod başında bu Application.ScreenUpdating = False
var.
Sayfaları silmeden önce hesaplama yapmayı denediniz mi, daha sonra sıfırlanmalı mı? – Rory