Tüm İhtimalleri Kapsayan Veri Olup Olmaması Kontrolu

04/04/2020, 09:56

accessman

iyi günler evde kalan arkadaşlar
metin kutusu, combobox, listbox,  checkbox, optiongroup vb içine değer girilip kontrol edilmesi gereken ne varsa 
formdan ayrılırken veya current olayı gibi durumlarda bize uyarı vermesi için nasıl bir şey yazmalıyız
mesela yeni kayıt açtık iki adet optiongroup var
birisinde cinsiyet seçmemiz gerekecek bunun tag ını "zorunlu" dedik
diğerinde eğitim durumunu seçeceğiz bunun tag ını "optional" dedik
eğer "zorunlu" tag olanları seçmeden ilgili kaydı terk etmek istesek bize 
"seçim yapmadınız diye uyaracak 

Dim ctl As Control
For Each ctl In Me.Form
    If ctl.ControlType = acOptionGroup Then
        If InStr(1, ctl.Tag, "zorunlu") <> 0 Then

        'seçim yapılmamış ise uyarı mesajı ver
       
        End if
    End If
Next ctl
Set ctl = Nothing
bunun gibi formda ne kadar kontrol varsa hepsini tarayıp boş geçersek bizi uyarmalı mesela textbox için 
Len(Me.txtbx1)<1  
isNull(Me.txtbx1)
Me.txtbx1= vbNullString
Empty
Blank
bu yazılanlar hepsi birbirini kapsar mı hangisini yazarsak tüm ihtimalleri içermiş olur
veya listboxtan seçim yapmamışız onun içinde kontol edip
Msgbox "listeden seçim yapmadınız" diye uyarmalı
veya label için Value kabul etmiyor onun için Caption olmalı
vs vs vs
nasıl bir fonksiyon yazmalıyız ki bir tane bile zorunlu taga sahip kontrol
 değer girilmeden farklı kayda geçilmesin

mesela 
If IsNull(Me.Metin5) Or Me.Metin5 = "" Then
bu metin kutusu için tüm boş olma ihtimallerini kapsar mı(empty falan filan)
06/04/2020, 17:23

ozanakkaya

If ctl.ControlType = acOptionGroup Then
şeklindeki kodu karıştırmadan 

if isnull(ctr.value) or ctl.value="" then
msgbox ctl.name & " Alanı Boş Bırakılamaz"
end if

şeklinde kod eklenebilir. Formun güncelleştirme öncesinde olayına da kod eklenebilir.
06/04/2020, 17:26

accessman

(06/04/2020, 17:23)ozanakkaya yazdı: If ctl.ControlType = acOptionGroup Then
şeklindeki kodu karıştırmadan 

if isnull(ctr.value) or ctl.value="" then
msgbox ctl.name & " Alanı Boş Bırakılamaz"
end if

şeklinde kod eklenebilir. Formun güncelleştirme öncesinde olayına da kod eklenebilir.
bunun için sadece label i mi dışda tutacağız yoksa onun için de geçerli mi
06/04/2020, 17:32

ozanakkaya

Boş-Dolu kontrolünde Etiket denetlenmeyeceği için etiketin im özelliğini boş bırakacaksınız.
06/04/2020, 17:49

accessman

teşekkürler sn. @ozanakkaya