Önce neden açılan kutuda boş denetimi yapamadığınızı söyleyeyim. Çünkü oradan çıkışta if ile yaptığımız tüm işlemlerde null veya "" olmasına göre kod yazıyoruz. Oysa sizin açılan kutunuz 2 sütunlu ve görünmeyen sütununuzda da "0" var. Yani varsayılan sıfır olduğu için, if ifadesi içine "0" ı da almak gerekiyordu. Ben de açılan kutunun çıkıldığında olayına şu kodu yazdım:
Kod:
If IsNull(Me![musterigurubkodu]) Or Me.musterigurubkodu = "" Or Me.musterigurubkodu = 0 Then
MsgBox "Alana veri giriniz"
End If
Kod:
If IsNull(Me![musterigurubkodu]) Or Me.musterigurubkodu = "" Or Me.musterigurubkodu = 0 Then
Me.musterigurubkodu.SetFocus
End If
Gelelim kayıt ve değişiklik durumuna. Bir modül içine global bir değişken tanımladım. Adı memo. Siz yeni kayıt tuşuna basınca memo=1, değişime basınca memo=2 değerini aldı. Eğer yeni kayıt tuşuyla açılmışsa memo= 2, değişiyorsa memo= 1 değeri aldığı için artık if ile ne yapmak isterseniz yapabilirsiniz. Buna bağlı olarak Ok tuşunuzun kodlarını şöyle yaptım:
Kod:
If memo <> 2 Then
MsgBox "Girmekte Oldugunuz " _
& SID & " isimi Daha Önce İşlenmiş." _
& vbCr & vbCr & "Lütfen Kayıtları Kontrol Ediniz.", vbInformation _
, "Mükerrer Kayıt"
Exit Sub
Else
End If
End If
Bu arada Ramazan aylarında yumurtalı-susamlı pide yapanlar kullandıkları o kadar yumurtanın beyazını ne yaparlar diye sorayım? Tabii ki ATOM adındaki beyaz tatlıyı yaparlar. Biz de bir atom yapalım dedik ve bir etiketin captionuna case select ile
"Yeni Kayıt Yapılıyor" ya da "Kaydı Değiştiriyorsunuz" ifadelerini form current olayına yazdık. O da eşantiyondur. Para istemez)))
Kod:
Select Case memo
Case 1
Etiket32.Caption = " Yeni Kayıt Yapılıyor"
Case 2
Etiket32.Caption = " Kaydı değiştiriyorsunuz"
End Select