Bağlı Tablo Verisi İçeren Listbox Hatası

1 2 3
14/12/2020, 12:11

sipuasfaf

(14/12/2020, 10:29)berduş yazdı: Ilgili formun olduğu çalışmanızı ekleyin inceleyelim?
Kodun tamamını görmeden bir şey söylemem zor. 3. mesajınızda tek liste için kontrol var, bu haliyle diğerleri için uyarı vermemesi gerek. Herbir liste icin ayri ayri yazdıysanız birlestirip tek kontrol dongusune sokmaniz yeterli olabilir

İlgili dosya kişisel veriler içerdiğiden ekleyemiyorum. Fakat satır kaynağı silme işini iptal ettim. Sadece response=0 ile sistemin verdiği hatayı kapatabiliyorum. Bu tabloya bağlı 3 listbox olduğu için herbiri adına hata veriyor. 1 kez vermesi benim için yeterli. İlk hatadan sonra "hata durumunda" denetiminin çalışmasını nasıl durdurabilirim? Bu da bir çözüm olacaktır diye düşünüyorum.

Kodun güncel hali;

Private Sub Form_Error(DataErr As Integer, Response As Integer)
 
    If Not dosyavarmi("********.accdb") = True Then
        MsgBox "Veritabanına bağlanılamadı", vbCritical, "Hata"
        Response = 0
    End If

End Sub
14/12/2020, 17:25

berduş

Option Compare Database satırının altına
Dim htSy As Boolean
satırını ekleyip
kodu aşağıdaki gibi düzenler misiniz?
Private Sub Form_Error(DataErr As Integer, Response As Integer)
Response = 0

If DataErr = 3024 And htSy = False Then
MsgBox "Veritabanına bağlanılamadı", vbCritical, "Hata"
End If
htSy = True
End Sub
14/12/2020, 17:34

sipuasfaf

(14/12/2020, 17:25)berduş yazdı: Option Compare Database satırının altına
Dim htSy As Boolean
satırını ekleyip
kodu aşağıdaki gibi düzenler misiniz?
Private Sub Form_Error(DataErr As Integer, Response As Integer)
Response = 0

If DataErr = 3024 And htSy = False Then
  MsgBox "Veritabanına bağlanılamadı", vbCritical, "Hata"
End If
htSy = True
End Sub


Üstad bu şekilde hiç hata vermiyor. Bağlanılamasa bile msgbox veya sistem uyarısı yok.
14/12/2020, 17:51

berduş

az önce yine denedim 1 defa hata verdi kapandı.

kapatıp açtım dosyayı tekrar bağladım, bağlı olan VT adını değiştirdim
bağlıyken uyarı vermedi, dosyayı bulamayınca 3 liste kutusu olmasına rağmen 1 defa verdi
14/12/2020, 18:02

sipuasfaf

(14/12/2020, 17:51)berduş yazdı: az önce yine denedim 1 defa hata verdi kapandı.

kapatıp açtım dosyayı tekrar bağladım, bağlı olan VT adını değiştirdim
bağlıyken uyarı vermedi, dosyayı bulamayınca 3 liste kutusu olmasına rağmen 1 defa verdi

Tekrar deneyeceğim sabah üstad
15/12/2020, 11:52

sipuasfaf

Üstad tekrar denedim, yine olmadı . Fakat If DataErr = 3024 yerine dosya yolu ve htsy ile koşul denediğimde 1 kez verip kapandı. Sanırım hata kodunda bir sorun vardı. Bu şekilde çözmüş olduk. Yardım için teşekkür ederim.

If Not dosyavarmi("********.accdb") = True And htSy = False Then
MsgBox "Veritabanına bağlanılamadı", vbCritical, "Hata"
End If

htSy = True
Response = 0
1 2 3