Excel で複数の行を合計する

Excel で複数の行を合計する

次のような表があるとします。

(画像はまだ埋め込めません)

販売先の顧客に関係なく、1 日目に販売されたリンゴの合計数を調べたいと思います。

ある程度は知っていますINDEX/MATCHが、どのように進めればよいかよくわかりません。

SUMIFこの関数を使用して、必要な日のみを合計できることは理解していますが、複数の行を合計する方法がわかりませんINDEX/MATCH

私が求めている出力は次のとおりです。

(これも埋め込むことはできません)

しかし、最も重要なのは、複数の特定の行を合計する方法そして私はこう要求するB16の配合

答え1

列 A のセルの結合を解除して正規化するオプションがある場合は、簡単な方法でSUMIFSうまくいくはずです。それ以外の場合は、次の方法を試してください。

=SUMPRODUCT($C$2:$C$13,
1*($B$2:$B$13=$A16),
1*(ROW($A$2:$A$13)>=SMALL(ROW($A$2:$A$13)+100*($A$2:$A$13=""),B$15)),
1*(ROW($A$2:$A$13)<SMALL(ROW($A$2:$A$13)+100*($A$2:$A$13=""),B$15+1)))

結果:

╔════════╦════╦════╗
║  Day   ║ 1  ║ 2  ║
╠════════╬════╬════╣
║ Apple  ║ 60 ║ 90 ║
║ Orange ║  0 ║ 85 ║
║ Pear   ║ 75 ║  0 ║
╚════════╩════╩════╝

ソース:

式を修正ここで見つかりました:

説明:

核となるのは機能でSMALLある

SMALL(ROW($A$2:$A$13)+100*($A$2:$A$13=""),B$15)

指定された範囲の行番号の配列を作成します。何も含まれていないセル(="")には、対応する行番号( )より100大きい値が割り当てられます。一方、条件を満たさないセル(つまり、空白でないセル)には、行番号のみが割り当てられます。この配列は、2番目の引数として関数+100*に渡され、SMALLB$15k番目配列内の最小の項目。

したがって、日付番号で始まる行を合計する必要があります。これがこの部分で行います。

1*(ROW($A$2:$A$13)>=SMALL(ROW($A$2:$A$13)+100*($A$2:$A$13=""),B$15))

しかし、次の空白でないセルのすぐ上のセルまでの合計計算を制限したいので、演算子<and B$15+1(つまり、(k+1)番目次の部分に最小の項目を入力します。

1*(ROW($A$2:$A$13)<SMALL(ROW($A$2:$A$13)+100*($A$2:$A$13=""),B$15+1))

答え2

フィールドのセルを結合解除してDay、日付の数字が各行に表示されるようにすると、ピボットテーブル必要な結果を得るには、これが最も簡単な方法です。

ピボット

関連情報