[VBA] Application.EnableEvents = False
#1
Excel programında olayları bir süreliğine iptal etmek istediğimizde Application.EnableEvents = False böyle bir kod yazıyorduk. Bu kod Accves'te nasıl çalışıyor.

DoCmd.RunCommand acCmdSelectRecord
DoCmd.RunCommand acCmdCopy
DoCmd.GoToRecord , , acNewRec
DoCmd.RunCommand acCmdSelectRecord
'Application.EnableEvents = False
DoCmd.RunCommand acCmdPaste
'Application.EnableEvents = True
Me.IslemTuru = "Giriş"

bu kod çalışınca Açılan kutulardan birindeki bir olay tetikleniyor. Bu olayın tetiklenmesini bir süre pasif etmek için ne yapmalıyım teşekkürler.



  Alıntı
Bu mesajı beğenenler:
#2
Sadece ilgili yere
Visual Basic
  1. DoEvents


yazmanız yeterlidir



  Alıntı
Bu mesajı beğenenler:
#3
DoEvents parametre olarak bir şey istemedi yani olayların işlemesini kapatmam sonra açmam lazım bu nasıl olacak analamdım.
Kodu şöylece denedim olaylar hala aktif

DoCmd.RunCommand acCmdSelectRecord
DoCmd.RunCommand acCmdCopy
DoCmd.GoToRecord , , acNewRec
DoCmd.RunCommand acCmdSelectRecord
DoEvents
DoCmd.RunCommand acCmdPaste
DoEvents
Me.IslemTuru = "Giriş"



  Alıntı
Bu mesajı beğenenler:
#4
Sayın trek6700
bekleme süresini şu şekilde ayarlayabilirsiniz,
Visual Basic
  1. Dim bekle As Integer
  2. DoCmd.RunCommand acCmdSelectRecord
  3. DoCmd.RunCommand acCmdCopy
  4. DoCmd.GoToRecord , , acNewRec
  5. DoCmd.RunCommand acCmdSelectRecord
  6. For bekle = 0 To 30000
  7. DoCmd.RunCommand acCmdPaste
  8. Next bekle
  9. Me.IslemTuru = "Giriş"



şu komut
Visual Basic
  1. DoCmd.RunCommand acCmdPaste


3 saniye bekledikten sonra çalışır, süreyi next ifadesindeki değeri değiştirerek ayarlayabilirsiniz.



  Alıntı
Bu mesajı beğenenler:
#5
Teşekkürler. Ancak sorunum çözülmedi.

O zaman bir de şöyle sorayım. VBA Events (olayları) pasif olacak.
Mesela excelde şöyle : Application.EnableEvents = False

Sizin yazdığınız döngüde ise sadece bekleme işlemi yapılıyor olaylar pasif olmuyor. Kod satırı yapıştırma işlemi şu anda kullanılamaz diye bir hata veiyor. Sanki döngü sayısınca yapıştırma işlemine devam edecekmiş geldi bana.




  Alıntı
Bu mesajı beğenenler:
#6
Merhaba..

Siz ne amaçla bu yapıyı kullanıyorunuz? Yeni kayıtta varsayılan değer getirmek için Dlast fonksiyonundan yararlanabilirsiniz gibi geliyor bana..



  Alıntı
Bu mesajı beğenenler:


Benzer Konular...
Konu: Yazar Cevaplar: Gösterim: Son Mesaj
  [FORM] Alt Formdaki Verileri Butonla True False Yapmak footprinting 2 497 28-01-2022, 13:24
Son Mesaj: footprinting
  Form Alanlarını Tek Komutla Enabled=false/true Yapabilmek M_Kemal_Askeri 2 828 01-10-2019, 01:14
Son Mesaj: M_Kemal_Askeri
  [FORM] Alt Form False olmuyor EminA 2 1.193 08-02-2017, 08:50
Son Mesaj: EminA

Foruma Git:


Bu konuyu görüntüleyen kullanıcı(lar): 1 Ziyaretçi