So kombinieren Sie mehrere Array-Argumente – SUMIF(S)? SUMPRODUCT?

So kombinieren Sie mehrere Array-Argumente – SUMIF(S)? SUMPRODUCT?

Ich würde mich über Anregungen hierzu freuen.

Date          Value
7-Feb-2016     100
20-Feb-2016    200 
15-Mar-2016    300
25-Mar-2016    400

Meine beiden Kriterien für eine Zusammenfassung sind

  1. Das Datum muss <= 31. März 2016 sein; und wenn 1. erfüllt ist, dann

  2. Datum minus 31. März 2016 <= 30

Mit anderen Worten: Welcher Betrag hat für alle Daten vor dem Monatsende (hier: 31. März 2016) eine Tagesspanne von weniger als 30 Tagen?

Ich würde eine Ausgabe von 700 (300+400) erwarten.

Ich habe Folgendes versucht:

SUMIFS(sum range,date range,"<="&42460,date range,date range-42460"<=30")
  • Beachten Sie, dass „42460“ in Excel als 31. März 2016 angezeigt wird und dass ich für das zweite Kriterium versucht habe, den Datumsbereich abzüglich einer Konstante zu verwenden.

Ist es möglich, beide Kriterien in einer einzeiligen Formel zu integrieren?

Antwort1

  • Ihre Frage ergibt keinen (ganz) Sinn. Sie haben die Bedingungen

    1. Das Datum muss ≤ 31. März 2016 sein und
    2. Datum minus 31. März 2016 ≤ 30

    Wenn das Datum ≤ 31. März 2016 ist, dann muss das Datum minus 31. März 2016 automatisch ≤ sein.null. Das heißt, Ihre zweite Bedingung ist automatisch für jedes Datum (jede Zeile) erfüllt, das die erste erfüllt.

    Aus Ihrem Beispiel (Daten im März sind eingeschlossen, Daten im Februar sind ausgeschlossen) schließe ich, dass Sie 31. März 2016 minus Datum ≤ 30 meinen. Praktischer ausgedrückt lässt sich das als Datum ≥ 31. März 2016 minus 30 (also Datum ≥ 1. März 2016) ausdrücken. Mir fällt übrigens auf, dass Scott Craner (nicht verwandt) dies für Sie behoben hat, ohne es zu erklären.

  • Wandeln Sie keine Daten in Zahlen um und verwenden Sie diese Zahlen dann in Formeln. Das führt zu einer Tabelle, die Sie nur schwer pflegen können und die niemand sonst verstehen kann. Sie sollten entweder
    • Tragen Sie das Enddatum in eine Zelle ein (z. B. E1) und führen Sie dann die folgenden Schritte aus
      =SUMMEWENNS($B$2:$B$5, $A$2:$A$5, ">=" & $E$1-30, $A$2:$A$5, "<=" & $E$1)
      oder
    • Fügen Sie das Datum so in die Formel ein, dass es sowohl für Menschen als auch für Excel verständlich ist:
      =SUMMEWENNS($B$2:$B$5, $A$2:$A$5, ">=" & DATUM(2016,3,31)-30, $A$2:$A$5, "<=" & DATUM(2016,3,31))
    • Sie könnten auch tun
      =SUMMEWENNS($B$2:$B$5, $A$2:$A$5, ">=3/1/2016", $A$2:$A$5, "<=3/31/2016")
      wenn Sie das Anfangs- und Enddatum kennen, aber ich komme nicht dahinter, wie ich die Berechnung (30 Tage abziehen) mit dieser Notation in einer einzeiligen Formel durchführen kann.
  • Ihnen ist natürlich klar, dass E1der 28. Februar 2015 der E1-3029. Januar 2015 ist, oder? Wenn Sie wirklich ein 30-Tage-Fenster wünschen, ist das für mich in Ordnung. Wenn Sie jedoch wirklich alle Einträge für einen bestimmten Monat hinzufügen möchten, sagen Sie es, denn es gibt bessere Möglichkeiten, dies zu tun.

Antwort2

Die richtige Form von SUMIFS():

=SUMIFS($B$2:$B$5, $A$2:$A$5, ">=" & 42460-30, $A$2:$A$5, "<=" & 42460)

Bildbeschreibung hier eingeben

Gesucht wird alles zwischen dem 31. März 2016 und dem 31. März 2016 – 30 Tage. Also,31 Mar 2016 - 30 <= Date <= 31 Mar 2016

verwandte Informationen