Summewenn mit Bezug auf Anzahl gefüllter Zellen
#1
Hallo.

Ich habe da mal eine Frage die schon vom beschreiben her schwierig ist.

Ich habe eine Tabelle mit über 100.000 Zeilen und 53 Spalten.
in Spalte A steht die Kundennummer
in Spalte B steht die Kundengruppe
in Spalte C bis AX die letzten 48 Monate (Umsätze)
in Spalte AY - BA soll gerechnet werden wie hoch der Umsatz wie folgt war
  • Datenbestand Juni 12 - Mai 16
  • Kunde A hatte letzten Umsatz in März 16
  • dann BA Umsatz April 15 - März 16
  • und AZ Umsatz April 14 - März 15
  • und AY Umsatz April 13 - Marz 14
  • Kunde B hatte letzten Umsatz in Jan 16
  • dann BA Umsatz Februar 15 - Januar 16
  • und AZ Umsatz Februar 14 - Januar 15
  • und AY Umsatz Februar 13 - Januar 14
  • Kunde C hatte letzten Umsatz in Mai 16
  • dann BA Umsatz Juni 15 - Mai 16
  • und AZ Umsatz Juni 14 - Mai 15
  • und AY Umsatz Juni 13 - Mai 14
Bis jetzt filtere ich jeden Monat manuell herum und klatsche die Formeln manuell rein.
Hat jemand eine Idee wie ich das formeltechnisch lösen kann?

Viele Grüße
Papa Sweetie
Top
#2
Hallo,

ich habe dir hier die Formeln zusammengestellt:
AY2   =SUMME(BEREICH.VERSCHIEBEN($C2;0;ANZAHL($C2:$AX2) - 36;1;12))
AZ2   =SUMME(BEREICH.VERSCHIEBEN($C2;0;ANZAHL($C2:$AX2) - 24;1;12))
BA2   =SUMME(BEREICH.VERSCHIEBEN($C2;0;ANZAHL($C2:$AX2) - 12;1;12))

Voraussetzung:
Bei Anzahl() werden die gefüllten Zellen gezählt.
Wenn also der letzte Umsatz im Januar 2016 war, dann dürfen unter Feb. bis Mai 2016 leere Zellen stehen.
Umgekehrt müssen in den Monaten vor dem letzten Umsatz immer Zahlen stehen.
Wenn also kein Umsatz vorhanden muss dort immer die "0" eingetragen sein.
Du hast "nur" 48 Monate mit Umsatz.
Sollte innerhalb der letzten 12 Monate kein Umsatz angefallen sein bekommst du die Fehlermeldung "#Bezug!".

Die o.a. Voraussetzungen habe ich als gegeben angenommen, ansonsten werden die Formeln recht unübersichtlich.

Viel Spaß
Gruß Günter
Top
#3
Hallo,

abgesehen davon, dass Bereich.verschieben eine volatile Funktion ist, würde ich hier mit nur einer Formel arbeiten:



Code:
=WENNFEHLER(SUMME(INDEX($A2:$AX2;VERWEIS(9;1/($C2:$AX2<>0);SPALTE($C2:$AX2))-12*(4-SPALTE(A1))+1):INDEX($A2:$AX2;VERWEIS(9;1/($C2:$AX2<>0);SPALTE($C2:$AX2))-12*(3-SPALTE(A1))));"zu wenig Zahlen")

in AY eintragen und nach rechts und unten ziehen. Der Formel ist es egal, ob in jeder Zelle Werte stehen, ob da eine Null steht oder eine leere Zelle.
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
[-] Folgende(r) 1 Nutzer sagt Danke an BoskoBiati für diesen Beitrag:
  • Papa_Sweetie
Top
#4
Danke Edgar! Exclamation
Funktioniert perfekt! Exclamation
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste