Bir de Berduş Üstadın kodunda ufak bir değişiklik yapmanız gerekli onu belirtmeyi unutmuşum özür dileyerek onun için düzenliyorum. 3. maddedeki maddedi txt_siparis_no güncellediğinde olayı için yazılan kodlarla ilgili olarak Berduş Üstad son derece pratik çözümlemiş sorununuzu dediğim gibi ancak 25. satırda geçici değişken değerinizi tabloadaki alan değil formunuzdaki alan belirlemeli bu kodun çalışması için.
Dim SPNO, gcSpNo As String
Dim SPNKR As String
SPNO = Me.txt_Siparis_No.Value
SPNKR = "SIPARISNO = '" & Forms!FRM_101_Siparisler!txt_Siparis_No & "'"
If Dlookup ("SIPARISNO", "SiparisA0", SPNKR) > 0 Then
If MsgBox(SPNO & " SİPARİŞ NO İLE KAYIT BULUNMAKTADIR." & vbCrLf & _
"DEVAM EDİLMESİ HALİNDE MEVCUT KAYITTA GÜNCELLEME YAPILACAKTIR." & vbCrLf & _
"DEVAM ETMEK İSTİYOR MUSUNUZ?", vbYesNo) = vbNo Then
' güncelleme onaylanmaz ise değişiklikleri geri al
' select case için değişken değerini ata
' kayıt düğmesinin resim yazısını kayıt ekle olarak değiştir
Me.Undo
Me.txt_kayıttanimlama = 0
Btn_KaydetGuncelle.Caption = "YENİ KAYIT EKLE"
Me.txt_Siparis_No.SetFocus
Else
' select case için değişken alan değerini ata
' kayıt düğmesinin resim yazısını güncelleme olarak değiştir.
gcSpNo = Me.txt_siparis_no.value '(buradaki değeri formunuzdaki alandan almalısınız o yüzden tablodaki değil bu şekilde formdaki alanı belirtmelisiniz)
Me.Undo
Me.txt_kayıttanimlama = 1
Btn_KaydetGuncelle.Caption = "KAYIT GÜNCELLE"
' kayıt güncellemenin onaylanması halinde sorgu sonuçlarını ilgili form alanlarına yükle
Me.Filter = "[SIPARISNO]='" & gcSpNo & "'"
Me.FilterOn = True
End If
End If