AccessTr.neT

Tam Versiyon: 4'lü If kullanımı hakkında
Şu anda arşiv modunu görüntülemektesiniz. Tam versiyonu görüntülemek için buraya tıklayınız.
Sayfalar: 1 2
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
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.
sayın seruz ilginize teşekkürler denedim ama olmadı hata veriyor örnek ekte
* 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
sayın seruz ilginiz için çok çok teşekkürler.
hayırlı ramazanlar.
Emek ve katkı için teşekkürler..
Sayfalar: 1 2