Merhaba arkadaşlar,
cevabını forumdan bulduğum bir problemim vardı. Bu sorunum için aşağıdaki kodu aldım ve kısmen çözüme ulaştım ancak şimdi yeni bir problem yaşıyorum sorun şu; tablo kaynağında "yineleme yok" özelliğine sahip bir alanın formda denetlenerek girilen değerin daha önce kayıtlı olup olmadığını kontrol edip, eğer daha önce kayıtlıysa kullanıcıyı ikaz eden şu kodu kullanıyorum.
Private Sub adısoyadı_BeforeUpdate(Cancel As Integer)
Dim SID As String
Dim stLinkCriteria As String
SID = Me.[adısoyadı].Value
stLinkCriteria = "[adısoyadı]=" & "'" & SID & "'"
If DCount("[adısoyadı]", "giriş", stLinkCriteria) > 0 Then
'Undo duplicate entry
MsgBox "Girmekte Oldugunuz " _
& SID & " isim Daha Önce İşlenmiş." _
& vbCr & vbCr & "Lütfen Kayıtları Kontrol Ediniz.", vbInformation _
, "Mükerrer Kayıt"
End If
End Sub
buraya kadar istediğimi yapıyor, yani daha önceden girilen değer varsa ikaz ediyor ancak,
yeni kayıtlar sırasında geçmişte bu alana kaydettiğim bir değeri silip yeni eklediğim kayda yazmak istediğimde kod hatası veriyor ve değerini sildiğim alandan çıkışım engelleniyor. "debug" düğmesine bastığımda
"SID = Me.[adısoyadı].Value"
satırı sarı işaretli olarak görünüyor. yani alanda silerek (Boş kalmasına) çıkışa izin vermiyor, mutlaka bir veri bulunmasına zorluyor. ben ise sadece varolan değerlerde yineleme olmamasını ancak boş kayıtlar bulunmasına izin vermesini istiyorum. bu hatayı gidermek için ne yapmam gerekiyor.
cevabını forumdan bulduğum bir problemim vardı. Bu sorunum için aşağıdaki kodu aldım ve kısmen çözüme ulaştım ancak şimdi yeni bir problem yaşıyorum sorun şu; tablo kaynağında "yineleme yok" özelliğine sahip bir alanın formda denetlenerek girilen değerin daha önce kayıtlı olup olmadığını kontrol edip, eğer daha önce kayıtlıysa kullanıcıyı ikaz eden şu kodu kullanıyorum.
Private Sub adısoyadı_BeforeUpdate(Cancel As Integer)
Dim SID As String
Dim stLinkCriteria As String
SID = Me.[adısoyadı].Value
stLinkCriteria = "[adısoyadı]=" & "'" & SID & "'"
If DCount("[adısoyadı]", "giriş", stLinkCriteria) > 0 Then
'Undo duplicate entry
MsgBox "Girmekte Oldugunuz " _
& SID & " isim Daha Önce İşlenmiş." _
& vbCr & vbCr & "Lütfen Kayıtları Kontrol Ediniz.", vbInformation _
, "Mükerrer Kayıt"
End If
End Sub
buraya kadar istediğimi yapıyor, yani daha önceden girilen değer varsa ikaz ediyor ancak,
yeni kayıtlar sırasında geçmişte bu alana kaydettiğim bir değeri silip yeni eklediğim kayda yazmak istediğimde kod hatası veriyor ve değerini sildiğim alandan çıkışım engelleniyor. "debug" düğmesine bastığımda
"SID = Me.[adısoyadı].Value"
satırı sarı işaretli olarak görünüyor. yani alanda silerek (Boş kalmasına) çıkışa izin vermiyor, mutlaka bir veri bulunmasına zorluyor. ben ise sadece varolan değerlerde yineleme olmamasını ancak boş kayıtlar bulunmasına izin vermesini istiyorum. bu hatayı gidermek için ne yapmam gerekiyor.