Makro SUMIFS-Coketopla Hk.

Katılım
25 Haziran 2023
Mesajlar
100
Excel Vers. ve Dili
Microsoft Office 2019 / TR
Herkese Merhaba,
iki ayrı sayfada aynı numaraların kriterlere göre toplamlarını aldırmak ıcın asagıdakı kodu yazdım fakat sadece ilk buldugunu "SANDALYE" olanın toplamını alıyor halbukı bu numarada masa olarak da tutarlar mevcut yazmıs oldugum kod asagıdakı gıbı olup hata yaptıgım nokta tam olarak neresı acaba desteklerınızı beklıyorum tesekkur ederım.



Sub sumıfs()

For i = 2 To 12


Set Currency_Amount = Worksheets("veri").Cells(i, 14)
Set Currency_Amount_Tr = Worksheets("veri").Cells(i, 16)
Set Department_Code = Worksheets("veri").Cells(i, 29)
Set Tr_Fatura_No = Worksheets("veri").Cells(i, 5)
Set Cost_Invoice_No = Worksheets("sonuç").Cells(i, 1)
Set Result_Update = Worksheets("veri").Cells(i, 30)


Masa_code_1 = "IHR-MASA"
Masa_code_2 = "EXP-MASA"

Sandalye_Code_1 = "IHR-SANDALYE"
Sandalye_Code_2 = "EXP-SANDALYE"


Worksheets("sonuç").Cells(i, 15) = Application.WorksheetFunction.SumIfs(Currency_Amount, Tr_Fatura_No, Cost_Invoice_No, Result_Update, Masa_code_1) _
+ Application.WorksheetFunction.SumIfs(Currency_Amount, Tr_Fatura_No, Cost_Invoice_No, Result_Update, Masa_code_2)

Worksheets("sonuç").Cells(i, 16) = Application.WorksheetFunction.SumIfs(Currency_Amount, Tr_Fatura_No, Cost_Invoice_No, Result_Update, Sandalye_Code_1) _
+ Application.WorksheetFunction.SumIfs(Currency_Amount, Tr_Fatura_No, Cost_Invoice_No, Result_Update, Sandalye_Code_2)



Next i

End Sub
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,591
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Merhaba,

İşlemi döngü olmadan çözebilirsiniz gibi görünüyor. Bunun için örnek dosya paylaşabilirmisiniz.

Ayrıca ek olarak profilinizde yazan "vba" ifadesi yerine bizlerdeki gibi kullandığınız ofis sürümünü ve dilini yazmanız daha faydalı olacaktır.
 
Katılım
25 Haziran 2023
Mesajlar
100
Excel Vers. ve Dili
Microsoft Office 2019 / TR
hocam merhaba dönguyu kaldırdım fakat yıne olmadı dosya paylasmayı cok bılmıyorum rıca etsem kodu ınceleyıp bana buradan destek olabılırmısınız.
ben sızden aldıgımı tekrar gozden gecırırım nerde hata yaptıgımı ogrenmek ıstıyorum
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,591
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Dosya yükleme sitelerini kullanarak paylaşımda bulunabilirsiniz.

 
Katılım
25 Haziran 2023
Mesajlar
100
Excel Vers. ve Dili
Microsoft Office 2019 / TR
düzelttim hocam afedersınız gozumden kacmıs o dosyayı ınceleme fırsatınız oldu mu acaba
 

Korhan Ayhan

Administrator
Yönetici
Admin
Katılım
15 Mart 2005
Mesajlar
41,591
Excel Vers. ve Dili
Microsoft 365 Tr-En 64 Bit
Deneyiniz.

C++:
Option Explicit

Sub VBA_Sumifs()
    Dim S1 As Worksheet, S2 As Worksheet
    Dim Table_Code As String, Chair_Code As String
   
    Set S1 = Sheets("sonuç")
    Set S2 = Sheets("veri")
       
    S1.Range("O2:P" & S1.Rows.Count).ClearContents
   
    Table_Code = "{""IHR-MASA"", ""EXP-MASA""}"
    Chair_Code = "{""IHR-SANDALYE"", ""EXP-SANDALYE""}"
   
    With S1.Range("O2:O" & S1.Cells(S1.Rows.Count, 1).End(3).Row)
        .Formula = "=SUM(SUMIFS('" & S2.Name & "'!N:N,'" & S2.Name & "'!E:E,'" & S1.Name & "'!A2,'" & S2.Name & "'!AD:AD," & Table_Code & "))"
        .Value = .Value
    End With

    With S1.Range("P2:P" & S1.Cells(S1.Rows.Count, 1).End(3).Row)
        .Formula = "=SUM(SUMIFS('" & S2.Name & "'!N:N,'" & S2.Name & "'!E:E,'" & S1.Name & "'!A2,'" & S2.Name & "'!AD:AD," & Chair_Code & "))"
        .Value = .Value
    End With
   
    Set S1 = Nothing
    Set S2 = Nothing
   
    MsgBox "İşleminiz tamamlanmıştır.", vbInformation
End Sub
 

Ekli dosyalar

Katılım
25 Haziran 2023
Mesajlar
100
Excel Vers. ve Dili
Microsoft Office 2019 / TR

etoplayla ilgili sütunları yaptım şu an veriyi çekiyor vba kullanmadım

Benım bu sorunu vba ıle cozmem gerekıyor hocam en hızlı ve basite indirgeyerek formuller ıle yapıyorum ama ınanılmaz kasıyor ve zaman alıyor satır sayım cok fazla
 
Üst