kim ne satmış

irfem4

Altın Üye
Katılım
30 Kasım 2010
Mesajlar
183
Excel Vers. ve Dili
2010 tr
Altın Üyelik Bitiş Tarihi
25-09-2028
örnek dosyada belirttiğim gibi kimin hangi ürünleri sattığını listelemem gerekiyor. ama beceremedim. formül ile yapılabilir mi yardım eder misiniz.
 

Ekli dosyalar

AdemCan

Altın Üye
Destek Ekibi
Katılım
1 Eylül 2008
Mesajlar
1,386
Excel Vers. ve Dili
2019 TR
PivotTable ile örnek.
239877
239878
 

AdemCan

Altın Üye
Destek Ekibi
Katılım
1 Eylül 2008
Mesajlar
1,386
Excel Vers. ve Dili
2019 TR
Tabloda herhangi bir hücreyi seçtiğiniz zaman PivotTable Analiz sekmesi aktif olur. Burada Yenile ya da Tümünü Yenile komutlarını kullanarak tabloyu güncelleyebilirsiniz.
239883

Makro ile güncellemek için ise
Kod:
ActiveWorkbook.RefreshAll
satırını kullanabilirsiniz.
 

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Sonuçlar "Sayfa2" de gösterilmek üzere VBA ile alternatif;

C#:
Sub Test()
    'Haluk 10/10/2022
    'sa4truss@gmail.com
    '
    Dim myDB As String, adoCN As Object, strSql As String, RS As Object
    
    Const adOpenDynamic = 1
    Const adLockOptimistic = 3
    
    myDB = ThisWorkbook.FullName
    
    Sheets("Sayfa2").Cells.Clear
    
    Sheets("Sayfa2").Range("A1:C1") = Array("ADI", "MİKTAR", "ÜRÜN")
    
    Set adoCon = CreateObject("ADODB.Connection")
    Set RS = CreateObject("ADODB.RecordSet")
    
    adoCon.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & _
                 myDB & ";Extended Properties=""Excel 12.0;HDR=Yes"""
                    
    strSql = "Select [ADI], [ÜRÜN], Sum([MİKTAR (TON)]) From [Sayfa1$] Group By [ADI], [ÜRÜN]"
            
    
    RS.Open Source:=strSql, ActiveConnection:=adoCon, CursorType:=adOpenDynamic, LockType:=adLockOptimistic
    
    Sheets("Sayfa2").Range("A2").CopyFromRecordset RS
    
    RS.Close
    Set RS = Nothing
    Set adoCon = Nothing
End Sub
 

irfem4

Altın Üye
Katılım
30 Kasım 2010
Mesajlar
183
Excel Vers. ve Dili
2010 tr
Altın Üyelik Bitiş Tarihi
25-09-2028
Sonuçlar "Sayfa2" de gösterilmek üzere VBA ile alternatif;

C#:
Sub Test()
    'Haluk 10/10/2022
    'sa4truss@gmail.com
    '
    Dim myDB As String, adoCN As Object, strSql As String, RS As Object
   
    Const adOpenDynamic = 1
    Const adLockOptimistic = 3
   
    myDB = ThisWorkbook.FullName
   
    Sheets("Sayfa2").Cells.Clear
   
    Sheets("Sayfa2").Range("A1:C1") = Array("ADI", "MİKTAR", "ÜRÜN")
   
    Set adoCon = CreateObject("ADODB.Connection")
    Set RS = CreateObject("ADODB.RecordSet")
   
    adoCon.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & _
                 myDB & ";Extended Properties=""Excel 12.0;HDR=Yes"""
                   
    strSql = "Select [ADI], [ÜRÜN], Sum([MİKTAR (TON)]) From [Sayfa1$] Group By [ADI], [ÜRÜN]"
           
   
    RS.Open Source:=strSql, ActiveConnection:=adoCon, CursorType:=adOpenDynamic, LockType:=adLockOptimistic
   
    Sheets("Sayfa2").Range("A2").CopyFromRecordset RS
   
    RS.Close
    Set RS = Nothing
    Set adoCon = Nothing
End Sub
teşekkür ederim. emeğinize sağlık
 

irfem4

Altın Üye
Katılım
30 Kasım 2010
Mesajlar
183
Excel Vers. ve Dili
2010 tr
Altın Üyelik Bitiş Tarihi
25-09-2028
t
Tabloda herhangi bir hücreyi seçtiğiniz zaman PivotTable Analiz sekmesi aktif olur. Burada Yenile ya da Tümünü Yenile komutlarını kullanarak tabloyu güncelleyebilirsiniz.

Makro ile güncellemek için ise
Kod:
ActiveWorkbook.RefreshAll
satırını kullanabilirsiniz.
teşekkür ederim. emeğinize sağlık. haluk beyin VBA kodu daha kullanışlı gibi.
 

irfem4

Altın Üye
Katılım
30 Kasım 2010
Mesajlar
183
Excel Vers. ve Dili
2010 tr
Altın Üyelik Bitiş Tarihi
25-09-2028
Sonuçlar "Sayfa2" de gösterilmek üzere VBA ile alternatif;

C#:
Sub Test()
    'Haluk 10/10/2022
    'sa4truss@gmail.com
    '
    Dim myDB As String, adoCN As Object, strSql As String, RS As Object
   
    Const adOpenDynamic = 1
    Const adLockOptimistic = 3
   
    myDB = ThisWorkbook.FullName
   
    Sheets("Sayfa2").Cells.Clear
   
    Sheets("Sayfa2").Range("A1:C1") = Array("ADI", "MİKTAR", "ÜRÜN")
   
    Set adoCon = CreateObject("ADODB.Connection")
    Set RS = CreateObject("ADODB.RecordSet")
   
    adoCon.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & _
                 myDB & ";Extended Properties=""Excel 12.0;HDR=Yes"""
                   
    strSql = "Select [ADI], [ÜRÜN], Sum([MİKTAR (TON)]) From [Sayfa1$] Group By [ADI], [ÜRÜN]"
           
   
    RS.Open Source:=strSql, ActiveConnection:=adoCon, CursorType:=adOpenDynamic, LockType:=adLockOptimistic
   
    Sheets("Sayfa2").Range("A2").CopyFromRecordset RS
   
    RS.Close
    Set RS = Nothing
    Set adoCon = Nothing
End Sub
Haluk Bey makroyu çalıştırınca diğer hücrelerdeki veri ve formüller siliniyor. makroyu sadece a,b ve c sütunları için çalıştıramaz mıyız.
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
42,272
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Bu satırı revize etmelisiniz.

Sheets("Sayfa2").Cells.Clear

Aşağıdaki gibi olabilir..

Sheets("Sayfa2").Range("A:C").Clear
 

yakamozexcel

Altın Üye
Katılım
10 Aralık 2009
Mesajlar
23
Excel Vers. ve Dili
office 2003 Türkçe
Altın Üyelik Bitiş Tarihi
29-04-2028
Sonuçlar "Sayfa2" de gösterilmek üzere VBA ile alternatif;

C#:
Sub Test()
    'Haluk 10/10/2022
    'sa4truss@gmail.com
    '
    Dim myDB As String, adoCN As Object, strSql As String, RS As Object
   
    Const adOpenDynamic = 1
    Const adLockOptimistic = 3
   
    myDB = ThisWorkbook.FullName
   
    Sheets("Sayfa2").Cells.Clear
   
    Sheets("Sayfa2").Range("A1:C1") = Array("ADI", "MİKTAR", "ÜRÜN")
   
[COLOR=rgb(184, 49, 47)][B]    Set adoCon = CreateObject("ADODB.Connection")[/B][/COLOR]
Haluk hocam     Set RS = CreateObject("ADODB.RecordSet")
   
    adoCon.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & _
                 myDB & ";Extended Properties=""Excel 12.0;HDR=Yes"""
                   
    strSql = "Select [ADI], [ÜRÜN], Sum([MİKTAR (TON)]) From [Sayfa1$] Group By [ADI], [ÜRÜN]"
           
   
    RS.Open Source:=strSql, ActiveConnection:=adoCon, CursorType:=adOpenDynamic, LockType:=adLockOptimistic
   
    Sheets("Sayfa2").Range("A2").CopyFromRecordset RS
   
    RS.Close
    Set RS = Nothing
    Set adoCon = Nothing
End Sub
Haluk hocam bu kısımda hata alıyorum
Set adoCon = CreateObject("ADODB.Connection")

Sebebi hakkında bilgilendirir misiniz?
Teşekkür ederim.
 

Ekli dosyalar

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Resimdeki hata normal şartlarda değişken tanımlanmadığı zaman olur ama, görüldüğü gibi sözkonusu "adoCon" değişkeni kodun başında "Object" olarak deklare edilmiş durumda.

Bu durumda, sadece tahmin yürütebilirim...... VBA penceresinde menülerde Tools > References bölümünü inceleyin. Eğer orada kullanılan referanslardan bazılarında "Missing" ifadesi varsa, o referansları kaldırın, dosyayı kaydedip tekrar deneyin....

.
 

yakamozexcel

Altın Üye
Katılım
10 Aralık 2009
Mesajlar
23
Excel Vers. ve Dili
office 2003 Türkçe
Altın Üyelik Bitiş Tarihi
29-04-2028
Resimdeki hata normal şartlarda değişken tanımlanmadığı zaman olur ama, görüldüğü gibi sözkonusu "adoCon" değişkeni kodun başında "Object" olarak deklare edilmiş durumda.

Bu durumda, sadece tahmin yürütebilirim...... VBA penceresinde menülerde Tools > References bölümünü inceleyin. Eğer orada kullanılan referanslardan bazılarında "Missing" ifadesi varsa, o referansları kaldırın, dosyayı kaydedip tekrar deneyin....

.
Haluk hocam Reference kısmında seçili olanlarla ilgili ekran görüntüsünü ekledim. "Missing" ifadesi yok.
 

Ekli dosyalar

Haluk

Özel Üye
Katılım
7 Temmuz 2004
Mesajlar
12,406
Excel Vers. ve Dili
64 Bit 2010 - İngilizce
+
Google Sheets
+
JScript
Altın Üyelik Bitiş Tarihi
Şu anda aklıma başka birşey gelmiyor maalesef...

.
 

dEdE

Destek Ekibi
Destek Ekibi
Katılım
1 Temmuz 2005
Mesajlar
2,605
Excel Vers. ve Dili
Ofis 2013 TR 64 Bit
Merhaba,
Değişken tanımlamada küçük bir harf hatası var gibi.
Hata veren satırdaki adoCon ifadesini adoCN olarak değiştirip dener misiniz?
 

yakamozexcel

Altın Üye
Katılım
10 Aralık 2009
Mesajlar
23
Excel Vers. ve Dili
office 2003 Türkçe
Altın Üyelik Bitiş Tarihi
29-04-2028
Merhaba,
Değişken tanımlamada küçük bir harf hatası var gibi.
Hata veren satırdaki adoCon ifadesini adoCN olarak değiştirip dener misiniz?
Çok teşekkür ederim.
 
Üst