Summewenns Formel mit Variablen Suchkriterien per Makro in Zellen schreiben

Hallo zusammen,
ich habe ein Problem und ich hoffe, Ihr könnt mir helfen.
Ich habe eine Tabelle mit Kundennummern, Produkte, Gruppe, Monaten, Jahren und Umsätze.
Die Spalten Kundennummer, Produkt, Gruppe, Umsatz und Jahr benenne ich mittels einer Variablen.
Nun muss ich neben der Tabelle die Umsätze pro Produkt jahresweise berechnen. Dies möchte ich mit der Formel Summewenns erledigen. Die Formel muss in den Zellen stehen, da die Werte für das Jahr 2017 noch eingetragen werden müssen und dann gleich berechnet werden sollen.
Das würde dann so aussehen:
Jahresumsatz 2015 nach Marke
84,14
Jahresumsatz 2016 nach Marke
95,45
Jahresumsatz 2017 nach Marke
0,00
Das Ganze muss über ein Makro laufen, da diese Tabelle auf Anfrage upgedatet werden muss und mal mehr und mal weniger Spalten enthält. Dies mache ich, indem ich eine Pivottabelle erstelle und diese dann kopiere. Danach lasse ich dann das Makro über das Blatt laufen.
Mein Makro sieht bis jetzt so aus:

Kunde = InputBox(" In welcher Spalte steht die Kundennummer?")
Marken = InputBox(" In welcher Spalte steht die Marke?")
Segment = InputBox("In welcher Spalte steht das Artikelsegment?")
Umsatz = InputBox("In welcher Spalte steht der Umsatz?")
Jahre = InputBox("In welcher Spalte steht das Jahr?")   
Columns(Kunde).Name = "Partner"
Columns(Marken).Name = "Produkt"
Columns(Segment).Name = "Gruppe"
Columns(Umsatz).Name = "Ertrag"
Columns(Jahre).Name = "Periode" 
 SummeSegment = InputBox(" In welcher Spalte soll die Umsatzsumme für das Artikelsegment stehen?")
SummeMarke = InputBox(" In welcher Spalte soll die Umsatzsumme für die Marke stehen?")
SummeKundeGesamt = InputBox("In welcher Spalte soll die Umsatzsumme für den Kunden stehen?")
startZeile = 2
Set WS = ActiveSheet

zeile = startZeile
Do Until IsEmpty(WS.Cells(zeile, 8))
KDNr = WS.Cells(zeile, Kunde)
KDNr1 = WS.Cells(zeile + 1, Kunde)
MNR = WS.Cells(zeile, Marken)
MNR1 = WS.Cells(zeile + 1, Marken)
ANR = WS.Cells(zeile, Segment)
ANR1 = WS.Cells(zeile + 1, Segment)
'fügt die Formal für den Segmentumsatz ein
If KDNr = KDNr1 And _
MNR = MNR1 And _
ANR <> ANR1 Then
Cells(zeile - 5, SummeSegment).FormulaR1C1 = _
„=“„Jahresumsatz 2015 nach Artikelsegment“"&"" „“&RC[-5]"
Cells(zeile - 5, SummeSegment).Interior.ColorIndex = 24
Cells(zeile - 4, SummeSegment).FormulaR1C1 = _
„=SUMIFS(Ertrag,Partner,RC4,Produkt,RC6,Gruppe,RC7,Periode,MID(R[-1]C,14,4))“
Cells(zeile - 3, SummeSegment).FormulaR1C1 = _
„=“„Jahresumsatz 2016 nach Artikelsegment“"&"" „“&RC[-5]"
Cells(zeile - 3, SummeSegment).Interior.ColorIndex = 24
Cells(zeile - 2, SummeSegment).FormulaR1C1 = _
"=SumIfs(Ertrag,Partner,cells(Partner, zeile),Produkt,cells(Produkt, zeile),Gruppe,Cells(Gruppe, zeile),Periode,cells(Periode, Mid(zeile -1,14,4))"
Cells(zeile - 1, SummeSegment).FormulaR1C1 = _
„=“„Jahresumsatz 2017 nach Artikelsegment“"&"" „“&RC[-5]"
Cells(zeile - 1, SummeSegment).Interior.ColorIndex = 24
Cells(zeile, SummeSegment).FormulaR1C1 = _
„=SUMIFS(Ertrag,Partner,RC4,Produkt,RC6,Gruppe,RC7,Periode,MID(R[-1]C,14,4))“

    zeile = zeile + 1

ect.
Leider funktioniert die fett markierte Zeile nicht, aber so hatte ich mir das in etwa vorgestellt.
Ich hoffe, ich habe mich einigermaßen verständlich ausgedrückt und Ihr könnt mir weiterhelfen.

VG Martina

Du must einen String aus den Inhalten zusammenbauen. Mach es mal so:

„=SumIfs(“
& Ertrag,Partner,cells(Partner, zeile).value
& „,“ & Produkt,cells(Produkt, zeile)
& „,“ &
Gruppe,Cells(Gruppe, zeile)
& „,“ &
Periode,cells(Periode
& „,“ & Mid(zeile -1,14,4))

Prinzip sollte so klar werden. Tipp: Setze einen Breakpunkt und schau dir dann das „Gefummel“ an. Dann ggfs. anpassen, bis das Ergebnis gut aussieht. Was auch hilft, ist in einer Zelle die Formel aufzubauen und dann per Direkfenster und Print die Formel auszulesen. (…Cells(n,m).formlua1c1)

Hoffe alle " und & sitzen richtig. (wahrscheinlich nicht). Bei der Eingabe immer vor und nach einem & ein Leerzeichen. (Mus meine ich sein…).

fg

Dirk_P

Hallo Dirk,

vielen Dank für die Antwort. Leider bekomme ich es nicht hin, aber ich versuche es jetzt auf einem anderen Weg. Irgentwie muss ich es hinbekommen, da ich die Tabelle teilweise monatlich erstellen muss.

Vielen Dank nochmal.

VG Martina