Form:İhtiyaç isimli (formun adı "frm_ihtiyac" olmalı) formunuza
Sub KayitAktar()
Dim GVarMi As Integer
Dim GSno As Integer
GVarMi = DCount("S_No", "Piyasa", "[ihtiyac_no]=" & [S_No])
If GVarMi = 0 Then
GSno = DMax("S_No", "Piyasa") + 1
DoCmd.SetWarnings False
DoCmd.RunSQL "INSERT INTO Piyasa (S_No, Malzemenin_Adı, Ölçüsü, ihtiyac_no ) values ('" & GSno & "','" & Malın_Adı & "','" & Ölçüsü & "','" & S_No & "')"
DoCmd.SetWarnings True
End If
End Sub
Şeklinde kod ekledim. Bu kod piyasa tablosunda ihtiyac_no alanının olup olmadığını, yani kaydın daha önce piyasa (tablonun adı tbl_piyasa olmalı) tablosuna kaydedilip edilmediğini kontrol eder, kaydedilmemiş ise Piyasa tablosuna s_no alanı ile birlikte kaydeder.
Bu kodu Yeni Kayıt ve Formu Kapat butonlarının tıklandığında olayına ekledim. Ayrıca bu butonlardaki katıştırılmış makro iptal edildi. Tavsiyem sizde buton oluşturduğunuzda katıştırılmış makro kullanmayın, olay yordamı kullanıp kod işini çözmeye çalışın.
Diğer tabloya veri aktarmanın yolu budur. İlişkilendirme ile iki tabloya veri aktaramazsınız.
Örneğinizin düzenlenmiş hali ektedir. İnceleyip olumlu/olumsuz bildirimde bulununuz.