- ベストアンサー
COUNTIF関数で、縦横の条件の積?
過去質問を色々見たのですが、わかりませんでした。 どなたか、ご教授ください! <表1>から、<表2>の実績表を作りたいと思います。 <表1> A B C D E … 1 5/1 5/5 6/2 7/8 2 10g 2 1 3 20g 5 5 4 30g 1 6 <表2> A B C D E … 1 5月 6月 7月 8月 2 10g 3 3 20g 5 5 4 30g 1 6 SUMPRODUCT関数は、横の数値の積を縦に計算するんですよね? ということは<表1>の「月」を条件とすることはできないのでしょうか?? 何か良い方法はありますか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
一例です。 (1)表1をA1:E4として、B1:E1は日付シリアル値で表示形式をm/dとします。 (2)表2をA7:E10として、B7:E7は日付シリアル値で表示形式をm"月"とします (3)表2のB8に=SUMPRODUCT(($A$2:$A$4=$A8)*(MONTH($B$1:$E$1)=MONTH(B$7))*($B$2:$E$4))として縦横にコピー 因みにB8:E10の表示形式をG/標準;-G/標準;;としておけば0は空白となります。
その他の回答 (2)
- 某HN クロメート(Chromate)(@CoalTar)
- ベストアンサー率40% (705/1742)
- kybo
- ベストアンサー率53% (349/647)
まず、表2の「5月」「6月」・・・等は 「2009/5/1」のような形式で入力しておき、セルの書式設定→表示形式→ユーザー定義で「m"月"」にしてOKします。 次にB2に入れる数式は、表1が「Sheet1」にある場合、 =SUMIF(Sheet1!$B$1:$E$1,">="&B$1,Sheet1!$B2:$E2)-SUMIF(Sheet1!$B$1:$E$1,">="&DATE(YEAR(B$1),MONTH(B$1)+1,0),Sheet1!$B2:$E2) といれます。 このB2を下方向、及び横方向にオートフィルしてコピーすれば、表2が完成します。
お礼
さっそくのご回答に感謝します。 SUMIF関数は初めてでしたが、とにかく入れてみたら出来ました! これから、関数のからくりについて、じっくり解析してみたいと思います。 どうもありがとうございました!
お礼
ご回答に感謝します! そうです、これがやりたかったんです(T_T) 個人的に、よく使うSUMPRODUCTを使いたかったんです。 感動です、ありがとうございました!