Skip to main content

AccessTr.neT


Liste Kutusu Sütun Toplama

Liste Kutusu Sütun Toplama

Çözüldü #1
sayın üyeler, kıymetli ustalar;

forumdaki 2 adet örneği kullanarak liste kutusu sütun toplama işlemini yapmak istedim ancak sonuç alamadım.

formun açıldığında olayına;

dim say as integer
Metin1=0
for say=0 to liste1.listcount
Metin1=Metin1 + Liste1.column(2)
Next

Metin2=liste1.listcount -1

kodunu koyduğumda işlemi yapıyor bazan. ancak ben başka bir listeden kayıt seçtiğimde süzülen listede (Liste1) sütunun toplamasını yapmak istiyorum. kodu tıklanma olayına koyduğumda kayıt sayısı alıyorum ancak sütun toplamını alamıyorum.

2 kodu kullandığımda;

Private Sub topla()
Dim Sw As Long, Sonuc As Double
For Sw = 1 To Me.Liste11.ListCount - 1
Sonuc = Sonuc + Nz(CDbl(Me.Liste11.Column(8, Sw)), 0)
Next Sw
Me.toplam = Sonuc
End Sub


*****Sonuc = Sonuc + Nz(CDbl(Me.Liste11.Column(8, Sw)), 0)

kısmında hata mesajı veriyor.

Yardım edebilirseniz sevinirim.

teşekkürler. saygılar.
hnakis, 15-10-2009 tarihinden beri AccessTr.neT üyesidir.
Cevapla
#2
liste kutusunda boş kayıt var büyük ihtimal.
tabloda boş kayıt olanlara SIFIR değeri girip tekrar deneyiniz derim.
Cevapla
#3
Nz(CDbl(Me.Liste11.Column(8, Sw)), 0)
yerine
CDbl(Nz(Me.Liste11.Column(8, Sw), 0))
kodunu dener misiniz? Sayın @alikagan 'ın da belirttiği gibi veri alanı boşsa cdbl hata verir bunu engellemek için once nz() ile boş veriye 0 değeri atanabilir
Cevapla
#4
sayın berduş;
liste 1 tıklama,güncelleştirme sonrası - öncesi olaylarına Call topla ekledim.

topla kısmındada dediğiniz düzeltmeyi yaptım ancak


Private Sub topla()
Dim Sw As Long, Sonuc As Double
For Sw = 1 To Me.Liste94.ListCount - 1
Sonuc = Sonuc + CDbl(Nz(Me.Liste94.Column(6, Sw), 0))
Next Sw
Me.toplatxt = Sonuc
End Sub

----------
Sonuc = Sonuc + CDbl(Nz(Me.Liste94.Column(6, Sw), 0))

kısmında Type mismatch hatası veriyor.
toplamak istediğim sütun para birimi ve sorgudaki hali;

Genel Toplam: SY("j";"Liste94";Format(Topla((([Fiyat]-([Fiyat]*[İskonto]))+(([Fiyat]-([Fiyat]*[İskonto]))*[KDV])));"#,###00.00 TL");0;Doğru)
şeklinde. acaba bundan dolayı hata veriyor olabilirmi.
hnakis, 15-10-2009 tarihinden beri AccessTr.neT üyesidir.
Son Düzenleme: 10/04/2023, 14:49, Düzenleyen: hnakis.
Cevapla
#5
çalışmanızı ekleyin inceleyelim
Cevapla
#6
yanlış alanı yazmış olabilirsiniz
indexler 0'dan başlar
mesela siz toplamı 1'den başlatmışsınız ama normalde 0'dan başlar
sütunlar da benzer şekilde çalışır mesela 8. sütundan veri almak için sizin Me.Liste11.Column(7, Sw) yazmanız gerekir
Cevapla

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

Yorum yapmak için üye olmanız gerekiyor

ya da