• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

ADO işlemlerinde düzensiz verilerde gruplandırma

tamer42

Destek Ekibi
Destek Ekibi
Katılım
11 Mart 2005
Mesajlar
3,202
Excel Vers. ve Dili
Office 2013 İngilizce
Merhaba;

Ekli dosyada düzensiz olan verilerin adresini yazarak ADO yöntemi ile başka bir sayfaya alabiliyoruz,

bazı durumlarda GROUP BY fonksiyonu ile belli alanlara göre gruplamak gerekebiliyor,

Alan başlıklarında herhangi bir başlık yazmadığı için; bu GROUP BY işlemini yapamadım

Ekli dosya Sayfa1' de D sütununa göre gruplandırarark, E sütununun toplam değerleri nasıl alabiliriz?

SELECT Urun_adi, SUM(Adet) FROM Sayfa1$ Group By Urun_adi

bu sorguyu uyarlamak istemiştim. yalnız başlıklar olmayınca beceremedim.

teşekkürler,

Kod:
    tbl = "[Sayfa1$A13:E" & LR & "]"
    

       strSQL = "Select * from " & tbl
       
           Set RS = Conn.Execute(strSQL)

    SH2.Range("A2").CopyFromRecordset RS

iyi pazarlar.
 

Ekli dosyalar

Merhaba;

Ekli dosyada düzensiz olan verilerin adresini yazarak ADO yöntemi ile başka bir sayfaya alabiliyoruz,

bazı durumlarda GROUP BY fonksiyonu ile belli alanlara göre gruplamak gerekebiliyor,

Alan başlıklarında herhangi bir başlık yazmadığı için; bu GROUP BY işlemini yapamadım

Ekli dosya Sayfa1' de D sütununa göre gruplandırarark, E sütununun toplam değerleri nasıl alabiliriz?

SELECT Urun_adi, SUM(Adet) FROM Sayfa1$ Group By Urun_adi

bu sorguyu uyarlamak istemiştim. yalnız başlıklar olmayınca beceremedim.

teşekkürler,

Kod:
    tbl = "[Sayfa1$A13:E" & LR & "]"
   

       strSQL = "Select * from " & tbl
      
           Set RS = Conn.Execute(strSQL)

    SH2.Range("A2").CopyFromRecordset RS

iyi pazarlar.

Aşağıdaki gibi en üst satıra sanal başlık yazdırarark çözüm ürettim, yalnız farklı çözüm olabilir mi bilemiyorum

Her şey için teşekkürler,

Kod:
    SH.Rows("13:13").ClearContents
    
    For i = 1 To 7
        SH.Cells(13, i) = "FFF_" & i
    Next i
    
    LR = SH.Cells(SH.Rows.Count, "A").End(xlUp).Row
    If LR < 14 Then Exit Sub

    tbl = "[Sayfa1$A13:G" & LR & "]"
    
    strSQL = "Select FFF_4,format(FFF_7,'dd.mm.yyyy') as dt, SUM(FFF_5) As Toplam from " & tbl & "  Group By FFF_4,format(FFF_7,'dd.mm.yyyy')"

           Set RS = Conn.Execute(strSQL)

    SH2.Range("A2").CopyFromRecordset RS
 
Merhaba,
bağlantı parametresinde Hdr=NO değişikliği yaparak
Kod:
strSQL = "Select [F4],sum([F5])as t from " & tbl & " group by [F4]"
şeklinde toplam değeri alabilirsiniz.
 
Merhaba,
bağlantı parametresinde Hdr=NO değişikliği yaparak
Kod:
strSQL = "Select [F4],sum([F5])as t from " & tbl & " group by [F4]"
şeklinde toplam değeri alabilirsiniz.
Mehmet Hocam Çok Teşekkürler,
müsaadelerinizle ilave bir husus daha soracağım,
Sorgunun içine tarihi de dahil edince, sonuç olarak tarih bilgisi hücreye sola yanaşık geliyor, hücreye doğrudan yazarken sağa yanaşık yazılmakta;

bu duurmu nasıl düzeltebiliriz,

tekrar teşekkürler,

Kod:
   strSQL = "Select format([F7],'dd.mm.yyyy') as dt, [F4],sum([F5])as t from " & tbl & _
    " group by [F4],format([F7],'dd.mm.yyyy')"

iyi pazarlar.
 

Ekli dosyalar

Merhabalar,
.CopyFromRecordset metodunu neredeyse hiç kullanmadım.
Bunun yerine, döngü ile istediğim alanı istediğim formatla yazdırdım.
Bence siz de düşünün.
 
Merhaba,

C++:
...............
SH2.Range("A2").CopyFromRecordset RS
SH2.Columns(1).HorizontalAlignment = xlRight
...............
 
Formatladığınız için TEXT olarak dönüyor. Aşağıdaki gibi sayısal olarak sonuç alabilirsiniz.

C++:
    strSQL = "Select CDate(format([F7],'dd.mm.yyyy')) as dt, [F4],sum([F5])as t from " & tbl & _
    " group by [F4],CDate(format([F7],'dd.mm.yyyy'))"
 
Geri
Üst