AccessTr.neT

Tam Versiyon: İlişkisiz Metin kutularında toplama
Ş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 3 4 5
Yanlış yerlere bakıyor olabilir miyiz?

[Resim: do.php?img=4063]
Hocam şimdi anlaşıldı hatanın nerede olduğu,siz verileri kendiniz yazmışsınız,oysa fiyat verileri açılan kutudan geliyor,siz yazmayın açılan kutudan ürün seçin gelen verileri toplayın,
Private Sub Komut138_Click()
Me.Toplam = Val(Me.Fıyat1) + Val(Me.Fıyat2) + Val(Me.Fıyat3) + Val(Me.Fıyat4) + Val(Me.Fıyat5) + Val(Me.Fıyat6) + Val(Me.Fıyat7) + Val(Me.Fıyat8) + Val(Me.Fıyat9) + Val(Me.Fıyat10) + Val(Me.Fıyat11) + Val(Me.Fıyat12) + Val(Me.Fıyat13) + Val(Me.Fıyat14)
End Sub
Hocam toplama işlemini yukarıdaki şekliyle çözdüm,çok tşk ederim size,ayrıca hata yaptığım kısım ise metin kutularını adlandırıken bir kısım fıyat (ı) şeklinde bir kısmıda fıyat şeklindeydi düzelttim oldu değerli vaktiniz aldığım için özür dilerim.Saygılarımla.
Toplama işlemi ilişkisiz metin kutularında yapıldığında & işaretinin işlevini görür. Bu nedenle değerleri integer şekline çevirmelisiniz. Bunun için açılan kutulardaki kodlarınızı şu şekilde düzenleyiniz.

Kod:
Fıyat1 = Int(Me.Açılan_Kutu54.Column(1)) veya
Fıyat1 = val(Me.Açılan_Kutu54.Column(1)) veya
Fıyat1 = fix(Me.Açılan_Kutu54.Column(1)) veya
Fıyat1 = round(Me.Açılan_Kutu54.Column(1))

Bu komutların hepsi de değerleri sayısal değere çevirir. Bu arada sayılarınızda zaten küsurat olmadığı için tüm yuvarlama komutları (int, fix, round) iş görür. Val ise zaten direkt olarak sayısal değere çeviriyor. Bu arada NZ olayını da düşünün.
1. ve 2. kutuda veri olmadığı için elle yazdım. Yukarıdaki Intel Amd seçimi dikkatimi çekmemişti Fur

Access'in varsayılan uyuzluklarından birisine daha denk gelinen anlardan sizin yaşadığınız Img-grin Varsayılan olarak o alanlar string kabul edildiğinden yani sayı olmadığından toplama yapmaz yan yana gösterir. Val komutu her ne kadar çözüm gibi gözüksede hatalı sonuçlar alabilirsiniz. Özellikle virgülden sonra rakam olan değerlerde (12.43 -> 12) tam sayı kısmını görürsünüz. Çözüm o alanları Double türüne çevirmekten geçer.

Toplam = CDbl(nz(Fıyat1,0)) + CDbl(nz(Fıyat2,0)) + CDbl(nz(Fıyat3,0))
Teşekkürler Alpeki. Benim aklıma double türüne çevirmek gelmemişti. Sayende öğrendim. Teşekkürler.
Sayfalar: 1 2 3 4 5