• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Application.ScreenUpdating = True Nedir?

hakki83

Altın Üye
Katılım
30 Eylül 2021
Mesajlar
567
Excel Vers. ve Dili
Excel 2016 Türkçe 32 Bit
Merhaba hocalarımız

Sorum şudur;

Çok az veriyle normalde 6 saniyede sonucu veren kodun en üstüne eklediğim
Application.ScreenUpdating = False
satırıyla, 0,69 saniyeye düşüyor.

Ve deniyor ki
Kodun en altına da
Application.ScreenUpdating = True
satırını eklenmelidir.

En alta bu satırı eklesem de eklemesem de süre açısından değişen bir şey olmuyor.

Tam olarak ne için ekleniyor en alta
Application.ScreenUpdating = True
satırı?

Teşekkürler.
 
Merhaba hocalarımız

Sorum şudur;

Çok az veriyle normalde 6 saniyede sonucu veren kodun en üstüne eklediğim
Application.ScreenUpdating = False
satırıyla, 0,69 saniyeye düşüyor.

Ve deniyor ki
Kodun en altına da
Application.ScreenUpdating = True
satırını eklenmelidir.

En alta bu satırı eklesem de eklemesem de süre açısından değişen bir şey olmuyor.

Tam olarak ne için ekleniyor en alta
Application.ScreenUpdating = True
satırı?

Teşekkürler.

Application.ScreenUpdating = False
İşlem sırasında ekranı tazemele yapma, yapılanları gösterme gibi.

Application.ScreenUpdating = True da göster anlamında.
True yapılmaz ise ekranda diğer işlemlerde tazeleme yapılmayacaktır.
 
True yapılmaz ise ekranda diğer işlemlerde tazeleme yapılmayacaktır.

Asri hocam teşekkürler, son kısmı anlayamadım, diğer işlemlerde tazeleme yapmayacaktır derken hangi işlemlerde?
 
Ofis 2016 sürümde aşağıdaki iki kodu denedim.

İlk başta FALSE olarak ayarlanan değer ikinci makroda otomatik olarak TRUE değerini alıyor.

C++:
Sub Test()
    Application.ScreenUpdating = False
End Sub

Sub Kontrol()
    MsgBox Application.ScreenUpdating
End Sub

Ama kod yazımındaki alışkanlıklardan dolayı makro bitiminde "Application.ScreenUpdating = True" ifadesini ekliyoruz.
 
O zaman Korhan hocam netice olarak en alta True satırını koymasak da değişen pek bir şey olmuyor anladığım kadarıyla.
 
Ofis sürümlerinde belki farklı durumlar olabilir. Kendiniz test ederek durumu gözlemleyebilirsiniz.
 
O zaman Korhan hocam netice olarak en alta True satırını koymasak da değişen pek bir şey olmuyor anladığım kadarıyla.

Ofis 2016 sürümde aşağıdaki iki kodu denedim.

İlk başta FALSE olarak ayarlanan değer ikinci makroda otomatik olarak TRUE değerini alıyor.

C++:
Sub Test()
    Application.ScreenUpdating = False
End Sub

Sub Kontrol()
    MsgBox Application.ScreenUpdating
End Sub

Ama kod yazımındaki alışkanlıklardan dolayı makro bitiminde "Application.ScreenUpdating = True" ifadesini ekliyoruz.


Makro çalışması süresinde true false geçişi yararlı olabilir.
Belki tüm makro işlemleri bittiğinde false -true oluyordur. Denemek lazım.

true işlemini fonksiyonlar arasında geçiş yaparken kullanabiliriz diye düşünüyorum.
Tüm makroların çalışma sürecinde bir sayfada işlem yaparken false yapıp göstermezken diğer sayfada işlem yaparken True yaparak gösterim sağlanabilir.
 
Geri
Üst