Kod:
docmd.requery
2. durumda da aynı şey geçerli.Yalnız oradaki kodlarınız hatalı. Öncelikle silme onayını göstermeyin. Bunun için siz kendiniz soru sordurun ve evet hayır durumuna göre silme ya da vazgeçme koyun.Bunu yapmışsınız ama tam değil. Mesela silmeyi onaylama penceresinde ilk soruya (msgbox ile sorduğunuz soruya) Evet deyip Eylem sorgusundaki soruya Hayır deyince hata döner. Debug ekranı gelir. Bu yüzden orayı da şöyle yapmalısınız:
Kod:
Private Sub Sil_Click()
On Error GoTo Err_hata
DoCmd.SetWarnings False
x = MsgBox("Bu kaydı Silmek İstediğinize Emin misiniz?", vbYesNo + vbQuestion, "DİKKAT")
If x = vbYes Then
DoCmd.RunSQL " DELETE *" & _
" FROM MenuTbl" & _
" WHERE (((MenuTbl.Tarih)=[Formlar]![Menueklefrm]![TarihSil])" & _
" AND ((MenuTbl.Ogun)=[Formlar]![Menueklefrm]![OgunSil]) " & _
" AND ((MenuTbl.Yemek)=[Formlar]![Menueklefrm]![YemekSil]));"
DoCmd.Requery
MsgBox "Seçilen kayıt silindi", vbInformation, "SİLİNDİ"
Else
Undo
MsgBox "Kayıt Silinmedi", vbInformation, "SİLİNMEDİ"
End If
DoCmd.SetWarnings True
Err_hata:
End Sub
Bu arada yerleştirdiği err_hata yapısını da kullanın kodlarınızda. Zarar etmezsiniz.
Kolay gelsin.