• DİKKAT

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

otomatik birleştirerek toplam aldırma

  • Konbuyu başlatan Konbuyu başlatan incsoft
  • Başlangıç tarihi Başlangıç tarihi
Katılım
18 Ağustos 2009
Mesajlar
752
Excel Vers. ve Dili
Office Ev ve İş 2021 - Türkçe
Arkadaşlar TOPLA butonum ile C sütunundaki değerleri F sütunundaki birleştirilmiş olan hücrelere toplattırıyorum ancak bunları da A sütunundaki tarihlere göre elle kendim birleştiriyorum. TOPLA komutuna bir komut vererek A sütununa göre otomatik olarak hücreleri birleştirerek toplam aldırmak için ne yapmam gerekir? İsterseniz bu yaptırmak istediğimi TOPLA2 butonuna formül atayarak G sütununa yaptırabilirsiniz. Teşekkürler..
 

Ekli dosyalar

Merhaba.

Aşağıdaki kod'u kullanabilirsiniz.
.
Kod:
[B]Private Sub CommandButton[COLOR="Red"][SIZE="4"]2[/SIZE][/COLOR]_Click()[/B]
son = Cells(Rows.Count, 1).End(3).Row
Application.ScreenUpdating = False
Range("G1:G" & son).ClearContents: Range("G1:G" & son).UnMerge
For i = 1 To son
    sonn = i - 1 + WorksheetFunction.CountIf([A:A], Cells(i, 1))
[COLOR="Red"]         For s = i To sonn
            If Cells(s, 3) > 0 Then topl = topl + Cells(s, 3)
         Next
[/COLOR]    Cells(i, "G") = topl: Range("G" & i & ":G" & sonn).Merge: i = sonn: topl = 0
Next
With [G:G]
    .VerticalAlignment = xlCenter: .HorizontalAlignment = xlGeneral
End With
Application.ScreenUpdating = True
[B]End Sub[/B]
 
Yardımınız için çok teşekkür ederim. Bur da toplamları sanırım macro ile alıyor. Toplam aldığı hücrelerde =ETOPLA($C$1:$C$4;">0") şeklinde uygulayarak alması mümkün müdür? Toplam alınan hücrelerde sıfırdan büyükleri aldırıyorum.
 
Tekrar Merhaba.

-- Önceki kod cevabımı, 0'dan büyükleri toplayacak şekilde güncelledim (önceki cevabımda kırmızı renklendirdiğim kısım).
-- İlle de birleştirilmiş hücrelerde formül görmek istiyorum derseniz aşağıdaki kod'u kullanın.
.
Kod:
[B]Private Sub CommandButton[COLOR="Red"][SIZE="4"]2[/SIZE][/COLOR]_Click()[/B]
son = Cells(Rows.Count, 1).End(3).Row
Application.ScreenUpdating = False
Range("G1:G" & son).ClearContents: Range("G1:G" & son).UnMerge
For i = 1 To son
    sonn = i - 1 + WorksheetFunction.CountIf([A:A], Cells(i, 1))
    Range("G" & i & ":G" & sonn).Merge
    Cells(i, "G")[COLOR="Blue"][B].Formula = "=SUMIF($C$" & i & ":$C$" & sonn & ","">0"")"[/B][/COLOR]
    i = sonn
Next
With [G:G]
    .VerticalAlignment = xlCenter: .HorizontalAlignment = xlGeneral
End With
Application.ScreenUpdating = True
[B]End Sub[/B]
 
Geri
Üst