Skip to main content

AccessTr.neT


Formda If İç İçe Kullanım

Formda If İç İçe Kullanım

#13
Teşekkür ederim. 

Yillik_Vize_Bitis_Trh geçmemiş, Diğer bitim tarihlerinden biri mesela AltYapi_Vize_Bitis_Trh geçmiş yapıyorum Form Yeniden Açıldığında Aktif yazıyor Pasif olamsı lazım. Yeni Yazarken Problem yok
haziran4, 15-05-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla
#14
Merhaba, elseif kısmı aşağıdaki gibi olmalı

If Not IsDate(Me.Yillik_Vize_Bitis_Trh) Then
   Me.Aktif_Pasif = "Kapalı"
   Exit Sub
End If


If Me.Yillik_Vize_Bitis_Trh < Date And Me.AltYapi_Vize_Bitis_Trh > Date Then

Me.Aktif_Pasif = "Pasif"

ElseIf Me.Yillik_Vize_Bitis_Trh < Date And Me.Endustriyel_Donusum_Belgesi_Vize_Bitis_Tarihi > Date Then

Me.Aktif_Pasif = "Pasif"

ElseIf Me.Yillik_Vize_Bitis_Trh < Date And Me.ic_Tesisat_Belgesi_Vize_Bitis_Tarihi > Date Then

Me.Aktif_Pasif = "Pasif"

Else

Me.Aktif_Pasif = "Aktif"

End If
Vize bitiş tarihi yok ise kapalı,
Herhangi biri geçmiş ise pasif.
Hiç biri değil ise aktif
Cevapla
#15
(29/04/2019, 17:57)ozanakkaya yazdı: Merhaba, elseif kısmı aşağıdaki gibi olmalı

If Not IsDate(Me.Yillik_Vize_Bitis_Trh) Then
   Me.Aktif_Pasif = "Kapalı"
   Exit Sub
End If


If Me.Yillik_Vize_Bitis_Trh < Date And Me.AltYapi_Vize_Bitis_Trh > Date Then

Me.Aktif_Pasif = "Pasif"

ElseIf Me.Yillik_Vize_Bitis_Trh < Date And Me.Endustriyel_Donusum_Belgesi_Vize_Bitis_Tarihi > Date Then

Me.Aktif_Pasif = "Pasif"

ElseIf Me.Yillik_Vize_Bitis_Trh < Date And Me.ic_Tesisat_Belgesi_Vize_Bitis_Tarihi > Date Then

Me.Aktif_Pasif = "Pasif"

Else

Me.Aktif_Pasif = "Aktif"

End If
Vize bitiş tarihi yok ise kapalı,
Herhangi biri geçmiş ise pasif.
Hiç biri değil ise aktif 
aynen boş iken Kapalı yazıyor Çıkıp Girdiğimde Kapalı Duruyor. Ama Diğertarihler geçmiş ise Pasif yazıyor. formdan çıkıp yeniden o kaydı açtığımda aktif yazıyor şaşılacak valla nerde yanlış yapıyorum bilemedim üstad
haziran4, 15-05-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla
#16
Merhaba, kodu aşağıdaki ile değiştirin. Farklı tarihler girip F5 ile formu yenileyerek test edin.

Dim GDate, G1, G2, G3, G4 As Long


GDate = CLng(Date)
G1 = CLng(Nz(Me.Yillik_Vize_Bitis_Trh, Date))
G2 = CLng(Nz(Me.Endustriyel_Donusum_Belgesi_Vize_Bitis_Tarihi, Date))
G3 = CLng(Nz(Me.ic_Tesisat_Belgesi_Vize_Bitis_Tarihi, Date))
G4 = CLng(Nz(Me.AltYapi_Vize_Bitis_Trh, Date))


If Not IsDate(Me.Yillik_Vize_Bitis_Trh) Then
   Me.Aktif_Pasif = "Kapalı"
   Exit Sub
End If

If (G1 > GDate) And (G4 < GDate) Then

   Me.Aktif_Pasif = "Pasif"

ElseIf (G1 > GDate) And (G2 < GDate) Then

   Me.Aktif_Pasif = "Pasif"

ElseIf (G1 > GDate) And (G3 < GDate) Then

   Me.Aktif_Pasif = "Pasif"

Else

   Me.Aktif_Pasif = "Aktif"

End If
Cevapla
#17
Üstad İlgilenmeniz için teşekkür ederim.

 sayfayı yeniledim mi boş bırakıldığında kapalı oluyor. tarihlerin biri geçmiş ise aktif geliyor. Şaşılacak valla
haziran4, 15-05-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla
#18
Benim denemelerimde herhangi bir sorun yok. Ben kodda geçen 4 metin kutusunda deneme yapıyorum. Metin kutularının isimlerini kontrol edin. Ayrıca hatalı olduğunu belirttiğiniz hususları yazın. Benim gözümden kaçan bir yer olabilir.
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da
Task