Arkadaşlar ekteki dosyada "Panel" adındaki form üzerinde 7 tane altformun "Zaman" formundaki BAŞLANGIÇ saatleri geldiğinde otomatik olarak yenilenmesini amaçlıyorum. Ancak ne yaptıysam olmadı. Çok araştırdım ancak beni sonuca ulaştıracak cevap bulamadım. inceler ve yardımcı olursanız sevinirim. Not: Eğer test yapacaksanız bilgisayarın tarihinin hafta içi olması gerekiyor.
Arkadaşlar ekteki dosyada "Panel" adındaki form üzerinde 7 tane altformun "Zaman" formundaki BAŞLANGIÇ saatleri geldiğinde otomatik olarak yenilenmesini amaçlıyorum. Ancak ne yaptıysam olmadı. Çok araştırdım ancak beni sonuca ulaştıracak cevap bulamadım. inceler ve yardımcı olursanız sevinirim. Not: Eğer test yapacaksanız bilgisayarın tarihinin hafta içi olması gerekiyor.
(17/12/2023, 16:10)6246386 yazdı: "Zaman" formundaki BAŞLANGIÇ saatleri geldiğinde otomatik olarak yenilenmesini amaçlıyorum
tam olarak anlamadım biraz daha açıklar mısınız?
hangi formdaki
BAŞLANGIÇ saatleri geldiğinde hangi formlar güncellenecek?
(17/12/2023, 17:14)berduş yazdı: (17/12/2023, 16:10)6246386 yazdı: "Zaman" formundaki BAŞLANGIÇ saatleri geldiğinde otomatik olarak yenilenmesini amaçlıyorum
tam olarak anlamadım biraz daha açıklar mısınız?
hangi formdaki BAŞLANGIÇ saatleri geldiğinde hangi formlar güncellenecek?
Panel formunu açtığınızda üstte tarih ve saatin hemen solunda bulunan iki metin kutusu, sağ altta bulunan zaman çizelgesinin BAŞLANGIÇ sütunundaki saatler geldiğinde (Örn. çizelgedeki 3. satırda bulunan 08:10 geldiğinde tnfsSaati adındaki textbox 3 değerini,dersSaati txtbox 0 değerini alıyor) değer alıyor. Bu değere göre sorgular tablolardan veri çekiyor ve panel formundaki diğer alt formlar doluyor. Saat değişimlerinde yenilenme olmuyor. Bu konuda yardım istiyorum.
Örneğinizi tam inceleme fırsatım olmadı ama yazdığınızdan anladığım bir Main form ve buna bağlı x sayıda alt formunuz mevcut ve bir zaman tablosu çerçevesinde pc saati ile bu çizelgeniz eşleştiğinde altformları yenilemek (requery) istiyorsunuz.
Kabaca aşağıdaki kodları inceleyin ve çalışmanıza uyarlayın
Kod:
Private Sub Form_Load()
Me.TimerInterval = 1000 ' Form yüklendiğinde zamanlayıcıyı başlatın
Me.TimerOn = True
End Sub
Kod:
Private Sub Form_Timer()
Dim PChhmm As Date ' Bilgisayarın saatini değişken olarak alın
PChhmm = Time
' Zaman tablosundaki başlangıç saatlerini al
Dim db As DAO.Database
Dim rs As DAO.Recordset
Set db = CurrentDb
Set rs = db.OpenRecordset("Zaman", dbOpenSnapshot)
Do While Not rs.EOF
If rs!BAŞLANGIÇ = PChhmm Then ' Tablo başlangıç saati ile pc saati eşleşiyorsa alt formu requery edin
RequeryAltForms
Exit Do ' Tablo - PC saatleri arasındaki ilk eşleşmde döngüden çık
End If
rs.MoveNext
Loop
rs.Close
Set rs = Nothing
Set db = Nothing
End Sub
Private Sub RequeryAltForms()
' Alt formları requery etmek için bu fonksiyonu kullanın
Dim AltFormAdlari As Variant
AltFormAdlari = Array("AltForm1", "AltForm2", "AltForm3", ...................) 'ALtform1,2 vs örnek olarak belirttim kendi formlarınızı tanımlayın.
Dim AltFormAdi As Variant
For Each AltFormAdi In AltFormAdlari
Me.Controls(AltFormAdi).Form.Requery
Next AltFormAdi
End Sub