Sorgu ile oluşturulmuş bir alt formda Gözlem soruları var. Ve bu sorulara “Yapıyor”, “Yapamıyor”, “Biraz yapıyor” gibi cevaplar işaretliyoruz.
Çalışkan öğrencilere tek tek “Yapıyor” seçeneğini işaretlemek yerine onaysec isimli açılan kutudan “Yapıyor” seçeneğini seçerek bütün soruları aynı anda “Yapıyor” olarak işaretliyorum.
Buraya kadar sorun yok.
Soru sayısı derslere ve sınıflara göre sürekli değiştiğinden soruları tablodan silmek yerine Sorulara ait kayıtları boş bırakıyorum. Durum böyle olunca boş bırakılan sorulara da “Yapıyor” “Yapamıyor” gibi değer atanıyor. Böylece ortalamalar yanlış hesaplanıyor.
Aşağıdaki kod çalışsın ama GozlemSorusu boş değilse çalışsın.
Private Sub onaysec_AfterUpdate()
On Error Resume Next
Dim krt1 As String, krt2, krt3 As Long
krt1 = Me.onaysec
krt2 = Forms.Mat_AnaForm.ogrenci
krt3 = Forms.Mat_AnaForm.ay
With DoCmd
.SetWarnings 0
.RunSQL "update Mat_sorgu2 set Deger = " & "'" & krt1 & "'" _
& " where TemaKodu= " & krt3 & " and OgrenciNo=" & krt2
.SetWarnings -1
End With
Requery
Call Forms.Mat_AnaForm.hesapla
End Sub
Çalışkan öğrencilere tek tek “Yapıyor” seçeneğini işaretlemek yerine onaysec isimli açılan kutudan “Yapıyor” seçeneğini seçerek bütün soruları aynı anda “Yapıyor” olarak işaretliyorum.
Buraya kadar sorun yok.
Soru sayısı derslere ve sınıflara göre sürekli değiştiğinden soruları tablodan silmek yerine Sorulara ait kayıtları boş bırakıyorum. Durum böyle olunca boş bırakılan sorulara da “Yapıyor” “Yapamıyor” gibi değer atanıyor. Böylece ortalamalar yanlış hesaplanıyor.
Aşağıdaki kod çalışsın ama GozlemSorusu boş değilse çalışsın.
Private Sub onaysec_AfterUpdate()
On Error Resume Next
Dim krt1 As String, krt2, krt3 As Long
krt1 = Me.onaysec
krt2 = Forms.Mat_AnaForm.ogrenci
krt3 = Forms.Mat_AnaForm.ay
With DoCmd
.SetWarnings 0
.RunSQL "update Mat_sorgu2 set Deger = " & "'" & krt1 & "'" _
& " where TemaKodu= " & krt3 & " and OgrenciNo=" & krt2
.SetWarnings -1
End With
Requery
Call Forms.Mat_AnaForm.hesapla
End Sub


