Verileri eşleştirip toplama ve ortalama

Katılım
19 Mart 2009
Mesajlar
2
Excel Vers. ve Dili
2003
ARKADAŞLAR DURUM ŞU ŞEKİLDE BUTONA BASTIĞIMDA 2008-2009 bilgi VE 2009 2010 bilgi çalışma sayfalarındaki DEĞERLERİN OTOMATİK OLARAK TOPLANIP SAYI VE ORTALAMALARINI YAZDIRMAK İSTİYORUM.YANİ 2008-2009 bilgi VE 2009 2010 ÇALIŞMA SAYFALARINDAKİ KURS TÜRÜNDEKİ VERİLER TOPLANIP ŞUBE ŞUBE SONUÇ SAYFASINDAKİ VERİLERE AKTARILACAK. MANÜEL OLARAK BEN 2009-2010 VERİSİNİ YAPTIM. 2008-2009 VERİSİ BOŞ OLDUĞU İÇİN YAPMADIM.YARDIMCI OLURSANIZ SEVİNİRİM ARKADAŞLAR
 

Ekli dosyalar

Katılım
22 Nisan 2005
Mesajlar
486
Excel Vers. ve Dili
tarkan@tarkanvural.com.tr
Mesaj içindeki harflerin tümünün büyük olması bana her zaman itici gelmiştir sn.bostanlı. :(
 
Katılım
23 Ekim 2007
Mesajlar
1,135
Excel Vers. ve Dili
Excel 2003 TR
Merhabalar...
Umarım istediğiniz budur.

Sonuç sayfasında
H6 hücresinde
Kod:
=ETOPLA('2008-2009 bilgi'!D2:D38;SONUÇ!E6;'2008-2009 bilgi'!F2:F38)
I6 hücresinde
Kod:
=ETOPLA('2008-2009 bilgi'!D2:D38;SONUÇ!E6;'2008-2009 bilgi'!H2:H38)
J6 hücresinde
Kod:
=ETOPLA('2009-2010 bilgi'!D2:D38;SONUÇ!E6;'2009-2010 bilgi'!F2:F38)
K6 hücresinde
Kod:
=ETOPLA('2009-2010 bilgi'!D2:D39;SONUÇ!E6;'2009-2010 bilgi'!H2:H39)
Bu formülleri aşağı doğru sürükleyin.

Butona gerek kalmadan otomatik sayılar görünür.

Not: E sütununda ki isimler aranacak sayfalarda ki isimler eşit olmalı yoksa neticeye ulaşamazsınız.
 
Katılım
19 Mart 2009
Mesajlar
2
Excel Vers. ve Dili
2003
garip sonuçlar ortaya çıkıyor başka türlü nasıl olabilir.
 
Katılım
22 Nisan 2005
Mesajlar
486
Excel Vers. ve Dili
tarkan@tarkanvural.com.tr
2009-2010 bilgi sayfasındaki Öğr.Sayı alanındaki noktayı silip Öğr Sayı olarak yazın ve aşağıdaki kodlamayı çalıştırın.

Kod:
Private Sub CommandButton1_Click()
Dim con As Object, rs As Object, sorgu As String
Set con = CreateObject("adodb.connection")
con.Open "provider=microsoft.jet.oledb.4.0;data source=" & ThisWorkbook.FullName & _
";extended properties=""excel 8.0;hdr=yes"""
For i = 6 To Range("a65536").End(3).Row - 1
If Cells(i, 2).Value = "Top" Then GoTo 10
sorgu = "select sum([Öğr Sayı])as say,avg([Net Ortalama])as ort from [2009-2010 bilgi$] "
sorgu = sorgu & "where [Şube Kodu]=" & Cells(i, 3).Value & " and [ Kurs Türü]=" & Cells(i, 6).Value
Set rs = con.Execute(sorgu)
Cells(i, 10).CopyFromRecordset rs
10 Next i
Set rs = Nothing
Set con = Nothing
sorgu = vbNullString: i = Empty
End Sub
 
Üst