listbox sütun toplamını alan kodda hatam var

Katılım
1 Şubat 2007
Mesajlar
143
Excel Vers. ve Dili
office 2007 türkçe
arkadaşlar herkese merhaba.
userform üzerinde iki adet listbox var.formda aratarak bazı kodları kendime uyarlamay çalıştım.ama bir adet listbox olunca herhangi bir sorun çıkmıyor.fakat aşağıdaki kodu iki adet listbox için kullandığımda userform göstermiyorve debug veriyor.nerde hata yapıyorum çözemedim.yardımcı olabilirmisiniz?

Kod:
Private Sub UserForm_Initialize()

Set s1 = Sheets("rapor")
ListBox1.ColumnCount = 4
ListBox1.RowSource = "rapor!a2:d" & s1.[a65536].End(3).Row
ListBox1.ColumnHeads = True
ListBox1.ColumnWidths = "120;80;80;80"
toplam = 0
For i = 0 To ListBox1.ListCount - 1
toplam = ListBox1.List(i, 1) + toplam
Next i
Label4.Caption = toplam
Label3.Caption = Date & " HESAPLANAN"

Set s1 = Sheets("rapor2")
ListBox2.ColumnCount = 4
ListBox2.RowSource = "rapor2!a2:d" & s1.[a65536].End(3).Row
ListBox2.ColumnHeads = True
ListBox2.ColumnWidths = "120;80;80;80"
toplam = 0
For a = 0 To ListBox1.ListCount - 1
toplam = ListBox2.List(a, 1) + toplam
Next a
Label7.Caption = toplam
Label6.Caption = Date & " HESAPLANAN"

End Sub
iki listboxda bulunan sütun toplamlarını labelde gösterdikten sonra diğer label farkını alacam.şimdiden herkese teşekkürler.:roll:
 
Katılım
15 Eylül 2005
Mesajlar
54
değişken tanımlamalarınızda hata var sanırım..
label8 adında yeni bir label oluşturduktan sonra kodlarınızı düzeltiniz..
Kod:
Private Sub UserForm_Initialize()

Sheets("rapor2").Select
Set s1 = Sheets("rapor")
ListBox1.ColumnCount = 4
ListBox1.RowSource = "rapor!a2:d" & s1.[a65536].End(3).Row
ListBox1.ColumnHeads = True
ListBox1.ColumnWidths = "120;80;80;80"
toplam = 0
For i = 0 To ListBox1.ListCount - 1
toplam = ListBox1.List(i, 1) + toplam
Next
Label4.Caption = toplam
Label3.Caption = Date & " HESAPLANAN"

Sheets("rapor2").Select
Set s2 = Sheets("rapor2")
ListBox2.ColumnCount = 4
ListBox2.RowSource = "rapor2!a2:d" & s2.[a65536].End(3).Row
ListBox2.ColumnHeads = True
ListBox2.ColumnWidths = "120;80;80;80"
toplam2 = 0
For a = 0 To ListBox1.ListCount - 1
toplam2 = ListBox2.List(a, 1) + toplam2
Next a
Label7.Caption = toplam2
Label6.Caption = Date & " HESAPLANAN"

Label8.caption = toplam2-toplam1
End Sub
yalnız bu kodlar sadece listboxların ikinci (B) sütununu toplar (belki farkında değilsinizdir diye söylüyorum).. diğer sütunları toplamak için for next döngülerinin içine diğer sütunlarıda ayrı ayrı değişkenlere toplatmanız gerekiyor..
 
Katılım
1 Şubat 2007
Mesajlar
143
Excel Vers. ve Dili
office 2007 türkçe
sayın vagatoga kodlarınızı uyguladım ama maalesef userformu göstermede yani userform.show kısmında hata verip userform u göstermiyor.
ama listbox2 için olan kodu sildiğimde ise formu gösterebiliyor.
hata kodu : runtime error 13
 
Katılım
15 Eylül 2005
Mesajlar
54
userformdaki nesnelerin isimlerinde hata olabilir.. vb sayfasından bir kontrol edin isterseniz.. yada en iyisi dosyayı gönderin ben düzeltmeye çalışayım..
 
Katılım
1 Şubat 2007
Mesajlar
143
Excel Vers. ve Dili
office 2007 türkçe
ek

kontrolü yaptım ama hatalı bişey göremedim.kendi dosyamın boyutu büyük ama örnek bir dosya hazırlayıp gönderiyorum.bakarsanız sevinirim.
 
Katılım
15 Eylül 2005
Mesajlar
54
dosya tamamdır..
(rapor ve rapor2 sayfalarında veri olmayınca hata veriyordu....)

sanırım yapılacak çok şey var bu programda.. kolay gelsin..
 
Katılım
1 Şubat 2007
Mesajlar
143
Excel Vers. ve Dili
office 2007 türkçe
teşekkürler

arkadaşım çok saol teşekkür ederim emeğine sağlık.program kapsamlı bişey olacak inşallah.sizin gibi dostların sayesinde.saol.
iyi çalışmalar
:arkadas:
 
Üst