• ベストアンサー

EXCELで途中の日付の行以外の合計を出す方法

エクセルで会費の月別入金表を作っています。一人の会員につき、2行使って、「入金額」と「入金日」を入力しています。SUM関数を使うとき、controlキーを押しながら選択していくのは分かっているのですが、ちょうど一行おきなので、その規則に基づいて、簡単に合計を出すことはできないでしょうか。そのまま全部の行を合計すると、日付の数値が含まれしまいます。

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

ROW()は行数を表す関数です。 これを2で割ると偶数(行)は0になり、奇数行は1になります。 0と日付のシリアル値(ご存知の数値です)、を掛けると 0になり、合計に影響しません。それでSUMPRODUCTを使って見ました。 データをB2:B7にいれて 2004/4/20 12 2004/4/21 10 2004/4/22 30 B8セルに=SUMPRODUCT(B2:B7,MOD(ROW(B2:B7),2)) としてみると52となり旨く行くようです。 奇数行に日付があれば データがC3:C8にあるとして =SUMPRODUCT(C3:C8,MOD(ROW(C3:C8)-1,2)) で旨く行くようです。

shinsen
質問者

お礼

SUMPRODUCTは、初めて使う関数ですが、数字そのものを0にしてしまうというのは、よいアイデアですね。勉強になりました。ありがとうございました。

その他の回答 (2)

  • snoopy64
  • ベストアンサー率42% (337/793)
回答No.2

もうすでに完璧な回答が出ていますが、入金額と入金日の上下が逆転していても使える方法を提示します。順番が決まっている場合は#1の方法でいいです。 A列は氏名、B列は入金額か入金日、C列は作業用、1行目はタイトル、データは2行目から始まるとします。 C2に「=CELL("format",B2)」として下方にコピーします。 入金日の行では「D3」、入金額の行では「G」となると思います。 で、入金額合計を出したいセルに「=SUMIF(C:C,"G",B:B)」とすると、入金額が合計されます。 頑張ってくださいヽ(^。^)ノ

shinsen
質問者

お礼

この表は、1月から12月まで一覧できるように作りました。またの折りに参考にさせていただこうと思います。ありがとうございました。

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 このページを参考にして下さい。 http://support.microsoft.com/default.aspx?scid=kb;ja;402181

参考URL:
http://support.microsoft.com/default.aspx?scid=kb;ja;402181
shinsen
質問者

お礼

ありがとうございました。

shinsen
質問者

補足

ようやく分かりました。何度やってもうまくいかないので、調べてみたところ配列数式として入力するときは、数式を確定するときに [Ctrl] + [Shift] +[ENTER] キーを押さないとダメなのですね。

関連するQ&A