Skip to main content

AccessTr.neT


4'lü If kullanımı hakkında

4'lü If kullanımı hakkında

Çözüldü #1
arkadaşlar fiyat listesinde ödeme gününe göre değerler var örnek peşin 15 TL. 15 gün 18 TL. 30 gün 20 TL. Kredi kartı 16 TL.
bunları aşağıdaki gibi yaptım oam olmadı yardımlarınıza şimdiden teşekkürler.


Private Sub List18_AfterUpdate()
If ODE = 0 < 15 Then
Me.FIYAT = List18.Column(2)

ElseIf ODE = 15 < 30 Then
Me.FIYAT = List18.Column(3)

ElseIf ODE = 30 < 100 Then
Me.FIYAT = List18.Column(4)

ElseIf ODE = KK Then
Me.FIYAT = List18.Column(5)
End If

End Sub
Cevapla
Çözüldü #2
Bir de bu şekilde deneyin.
Kod:
Private Sub List18_AfterUpdate()
If ODE Between 0 And 15 Then
    Me.FIYAT = List18.Column(2)
ElseIf ODE Between 16 And 30 Then
    Me.FIYAT = List18.Column(3)
ElseIf ODE Between 31 And 100 Then
    Me.FIYAT = List18.Column(4)
ElseIf ODE = "KK" Then
    Me.FIYAT = List18.Column(5)
End If
End Sub


Örneğiniz olmadığı için Kredi Kartı için kullandığınız KK alanının
bir değişken mi veya bir değer mi olduğu anlaşılmıyor.
Ben değerdir diye tahmin ederek "KK" olarak değiştirdim.
Bu durumda ODE alanı metin ise, üstteki kontrolleri de CInt(ODE) olarak değiştirmek gerekebilir.

Bir deneyin, olmazsa örneğinizi eklemeniz gerekmektedir.
Bildiğini bilenin arkasından git, bildiğini bilmeyeni uyar, bilmediğini bilene öğret, bilmediğini bilmeyenden kaç.
Konfüçyüs
Cevapla
Çözüldü #3
sayın seruz ilginize teşekkürler denedim ama olmadı hata veriyor örnek ekte
.rar YEM_SATIŞ.rar (Dosya Boyutu: 803,33 KB | İndirme Sayısı: 11)
Cevapla
Çözüldü #4
* Alt form'da kontrol koyup, üst formdaki nesneye ulaşmak için me.parent kullandım (Forms!SIPARIS.ODEME de kullanılabilirdi).
* ODE olan ismi ODEME olarak, list18 olan ismi KKOD olarak değiştirdim.
* Açılan kutu ayarlarını fiyatları düzgün gösterecek şekilde düzelttim.
* Ödeme bilgisinin düzgün girildiğini kontrol eden kontrol ekledim.
* ElseIf yerine Select Case kullandım, daha kullanışlıdır.

Kod:
Private Sub KKOD_AfterUpdate()
If IsNull(Me.Parent.ODEME) Then
    MsgBox "Ödeme günü bilgisi giriniz"
ElseIf Not IsNumeric(Me.Parent.ODEME) And Me.Parent.ODEME <> "KK" Then
    MsgBox "Kredi Kartı için KK giriniz"
ElseIf Me.Parent.ODEME < 0 Or Me.Parent.ODEME > 100 Then
    MsgBox "Ödeme günü bilgisi 0 ile 100 arasında olmalıdır"
End If
'-----------------------------------
Select Case Me.Parent.ODEME
    Case 0 To 15
        Me.FIYAT = Me.KKOD.Column(2)
    Case 16 To 30
        Me.FIYAT = Me.KKOD.Column(3)
    Case 31 To 100
        Me.FIYAT = Me.KKOD.Column(4)
    Case "KK"
        Me.FIYAT = Me.KKOD.Column(5)
    Case Else
        Me.FIYAT = 0
End Select
End Sub



Bu aralar Sql Server'da SP ve Trigger'lar ile uğraştığım için (+oruç) if içinde Between kullanmışım, özür Img-grin
.rar YEM_SATIS_Seruz.rar (Dosya Boyutu: 345,72 KB | İndirme Sayısı: 19)
Bildiğini bilenin arkasından git, bildiğini bilmeyeni uyar, bilmediğini bilene öğret, bilmediğini bilmeyenden kaç.
Konfüçyüs
Cevapla
Çözüldü #5
sayın seruz ilginiz için çok çok teşekkürler.
hayırlı ramazanlar.
Cevapla
Çözüldü #6
Emek ve katkı için teşekkürler..
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da