Anzeige
Archiv - Navigation
1308to1312
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Summen per Makro bilden

Summen per Makro bilden
19.04.2013 11:16:42
onkelbobby
Hi,
ich möchte gerne am Ende einer Liste Summen für vorliegende Produktarten bilden. Dies soll per Makro nach Drücken eines Buttons geschehen.
Die Größe der Liste variiert (verschiedene Daten werden in die Liste importiert und danach ausgewertet).
Um das zu Veranschaulichen habe ich eine Beispieldatei angefügt. Alle vorhandenen Kombinationen von Spalte D und E sollte aufgelistet und die Summe der jeweiligen Spalte C angegeben werden. Das gewünschte Ergebnis ist gelb markiert!
Danke für Eure Tipps!
https://www.herber.de/bbs/user/84949.xlsx

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Summen per Makro bilden
19.04.2013 11:42:50
Rudi
Hallo, Sub summen() Dim oSum As Object, rngC As Range, arrTmp, sKey Set oSum = CreateObject("Scripting.Dictionary") For Each rngC In Range(Cells(2, 1), Cells(Rows.Count, 1).End(xlUp)) sKey = rngC.Offset(, 3) & "|" & rngC.Offset(, 4) If oSum.exists(sKey) Then arrTmp = oSum(sKey) arrTmp(0) = arrTmp(0) + rngC.Offset(, 2) oSum(sKey) = arrTmp Else oSum(sKey) = Array(rngC.Offset(, 2).Value, _ rngC.Offset(, 3).Value, _ rngC.Offset(, 4).Value) End If Next arrTmp = oSum.items arrTmp = WorksheetFunction.Transpose(arrTmp) arrTmp = WorksheetFunction.Transpose(arrTmp) Cells(Rows.Count, 1).End(xlUp).Offset(2, 2).Resize(oSum.Count, 3) = arrTmp End Sub
Gruß
Rudi

Anzeige
AW: Summen per Makro bilden
19.04.2013 12:39:55
onkelbobby
Danke Euch allen! Funktioniert!!!

AW: Summen per Makro bilden
19.04.2013 11:51:36
windalf
Sieht für mich eher nicht nach Makro, sondern einfach nach Pivot aufrufen aus oder aber man verwendet Summenprodukt

AW: Summen per Makro bilden
19.04.2013 12:32:18
UweD
Hallo
Ich denke deine Ergebnisanzeige ist in den ersten beiden Zeilen falsch.
Richig ist:

2	DE	KL
2	DE	KS

Sub TT()
On Error GoTo Fehler
Dim TB, LR&, L2&, L3&
Set TB = ActiveSheet
Application.ScreenUpdating = False
With TB
LR = .Cells(Rows.Count, 1).End(xlUp).Row 'letzte Zeile der Spalte A
L2 = LR + 2: L3 = L2 + LR - 2
.Range("D2:E" & LR).Copy .Range("D" & L2)
.Range("$D$" & L2 & ":$E$" & L3).RemoveDuplicates Columns:=Array(1, 2), Header:=xlNo
L3 = .Cells(Rows.Count, 4).End(xlUp).Row 'letzte Zeile der Spalte D
.Range("C" & L2 & ":C" & L3).FormulaR1C1 = _
"=SUMIFS(R2C:R6C,R2C[1]:R6C[1],RC[1],R2C[2]:R6C[2],RC[2])"
.Range("C" & L2 & ":C" & L3).Copy
.Range("C" & L2 & ":C" & L3).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone,  _
SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
.Range("A8") = "Summen"
End With
Err.Clear
Fehler:
If Err.Number  0 Then MsgBox "Fehler: " & Err.Number & vbLf & Err.Description: Err.Clear
End Sub
Gruß UweD

Anzeige
AW: Summen per Makro bilden
19.04.2013 12:40:37
Matthias
Hallo
Da sind aber Deine Beispielsummen falsch!
Tabelle1

 ABCDE
1NameAdresseMengeProduktProdukt-Art
2MeierA-Str.2DEKL
3MusterB-Weg1DEKS
4MüllerC-Gasse3AMKL
5BauerD-Str.2ARKL
6BaumannE-Weg1DEKS
7     
8Summen 3DEKL
9  1DEKS
10  3AMKL
11  2ARKL


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
DE & KL ergibt 2! nicht 3
DE & KS ergibt 2! nicht 1


Benutze Summenprodukt:
Tabelle1

 ABCDE
1NameAdresseMengeProduktProdukt-Art
2MeierA-Str.2DEKL
3MusterB-Weg1DEKS
4MüllerC-Gasse3AMKL
5BauerD-Str.2ARKL
6BaumannE-Weg1DEKS
7     
8  2DEKL
9  2DEKS
10  3AMKL
11  2ARKL

Formeln der Tabelle
ZelleFormel
C8=SUMMENPRODUKT(($D$2:$D$6=D8)*($E$2:$E$6=E8)*$C$2:$C$6)
C9=SUMMENPRODUKT(($D$2:$D$6=D9)*($E$2:$E$6=E9)*$C$2:$C$6)
C10=SUMMENPRODUKT(($D$2:$D$6=D10)*($E$2:$E$6=E10)*$C$2:$C$6)
C11=SUMMENPRODUKT(($D$2:$D$6=D11)*($E$2:$E$6=E11)*$C$2:$C$6)


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Matthias
Anzeige

8 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige