• ベストアンサー

エクセルを使っての合計値で…

たとえば、簡単に書くと…、 5/1 山田 \250 5/1 鈴木 \120 5/2 山田 \300 5/3 高橋 \120 5/3 井上 \280 5/3 山本 \280 5/4 山田 \120 5/4 上田 \340 5/5 山田 \690 というような表で 5/1~5/2の合計値、5/3~5/5までの合計値といような計算を別シートのセルに表示させたいのですが、どのような方法があるでしょうか? 別質問で出ているのかもしれませんが、検索しきれませんでした。 よろしくお願いします。

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

  • ベストアンサー
  • comv
  • ベストアンサー率52% (322/612)
回答No.7

こんばんは #5 comv です 使っている関数がSUMIF()だけだったので説明を 省いてしまい失礼しました =SUMIF(Sheet1!A:A,">="&A2,Sheet1!C:C)-SUMIF(Sheet1!A:A,">"&B2,Sheet1!C:C) SUMIF(Sheet1!A:A,">="&A2,Sheet1!C:C) この部分はSUMIF()関数なので SUMIF(検索範囲,条件,集計範囲)となり 検索範囲 Sheet1!A:A → Sheet1のA列 条件 ">="&A2  A2に最初の日付 2003/5/1 が入っているので  条件は >=2003/5/1 → 5/1以降となります 集計範囲 Sheet1!C:C → Sheet1のC列 結果1  条件に合致したSheet1のA列と同じ行のC列の値  を合計します(日付1以降の全ての日付が対象) 結果2 後半の式 SUMIF(Sheet1!A:A,">"&B2,Sheet1!C:C) では日付2で示した値より大きいA列と同行のC列の値 を合計しています したがって 結果1から結果2を引くと結果的に 日付1以降で日付2以下のA列に対応したC列の値を 合計したものと同値になります。 整理すると  結果1は(条件の範囲値+結果2の値)なので  そこから結果2の値を引けば 条件に合致した  値が得られる ってことです

yukiusa
質問者

お礼

再度詳しい説明ありがとうございました! 参考にします!

その他の回答 (6)

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

(データ)A1:C9へ 5月1日 山田  \250 5月1日 鈴木  \120 5月2日 山田  \300 5月3日 高橋  \120 5月3日 井上  \280 5月3日 山本  \280 5月4日 山田  \120 5月4日 上田  \340 5月5日 山田  \690 (合計する日にちの最初・最後) 同一シートでも良いと言うことなので E1:F2に 5月1日 5月3日 5月4日 5月5日 この幅は自由に設定して良い。 (関数式) G1セルに =SUMIF($A$1:$A$10,">=" & E1,$C$1:$C$10)-SUMIF($A$1:$A$10,">=" & F1+1,$C$1:$C$10) $C$10となっているのは実入力データより下の行でも 良いと言うこと。月末に入力しそうな行以下にする。 (結果) G1:G2に 1350 1150 結局#5のご回答とアイデアは同じなのだが、式を複写する以上、絶対番地にしておかないといけない部分があると言うことです。(複写して第1引数がずれると、答えが正しく出ないはず)。 それと私のように>=を使うとF1+1の+1(次ぎの日にする)が必要です。

yukiusa
質問者

お礼

ありがとうございます。 同じ結果を得るにも人それぞれいろいろなやり方がありますね~。 参考になりました!

  • comv
  • ベストアンサー率52% (322/612)
回答No.5

こんにちは ----Sheet1-----------------   A  B  C 1 日付 氏名 金額 2 5/1 山田 \250 3 5/1 鈴木 \120 4 5/2 山田 \300 5 5/3 高橋 \120 6 5/3 井上 \280 7 5/3 山本 \280 8 5/4 山田 \120 9 5/4 上田 \340 10 5/5 山田 \690 :   :   : ----Sheet2-----------------   A  B  C 1 日付1 日付2 合計 2 5/1  5/2  式 3 5/3  5/5  ↓ セルC2に式 =SUMIF(Sheet1!A:A,">="&A2,Sheet1!C:C)-SUMIF(Sheet1!A:A,">"&B2,Sheet1!C:C) 下行へ複写

yukiusa
質問者

補足

丁寧な回答ありがとうございます。 すみません、図々しいのですが、計算式の説明をしていただけないでしょうか? (実は、例に上げたものは簡略に書いたものなので、実際はもっと複雑なのです。応用しなくてはならないので…。)

  • arukamun
  • ベストアンサー率35% (842/2394)
回答No.4

自分で条件に見合ったものを選択して合計を出すのであればSUMで出来ます。 5/1~5/2の合計といった条件があるのであればDSUB関数を使う事になると思います。

  • tbobi
  • ベストアンサー率45% (544/1189)
回答No.3

別シートの合計値を入れたいセルに =SUM( と入れて、 元のシートをクリックして、合計値を求めたい範囲をマウスで範囲指定します。そうしたら、後ろの ”)”を入力します。 例)=SUM(SHEET1!A1:A5)のようになります こうすればよいのでは?

  • epson01
  • ベストアンサー率12% (120/933)
回答No.2

IF文を使います。

  • fuzzball
  • ベストアンサー率19% (45/233)
回答No.1

別シートのセルを参照する場合は、 =SUM(Sheet2!A1:A10) のような感じでシート名を書いてやればOKです。 似たような質問があったので参考にしてみてください。 (ちなみに"エクセル 別シート 集計"で検索しました)

参考URL:
http://oshiete1.goo.ne.jp/kotaeru.php3?q=506556
yukiusa
質問者

補足

早速の回答ありがとうございました。 言葉が足りませんでした。スミマセン。 「別シートに表示させる」のはそんなに重要ではないのですが、予算まであといくら…を数字でみたいので…。 5/1~5/2までの合計値 5/3~5/10までの合計値(5/6以降は順次入力されると仮定) 5/3~5/10までの合計値が表示されるセルには今日時点で5/5までの合計値が入った状態で表示させたい場合はどのようにしたらよいでしょうか?

関連するQ&A

専門家に質問してみよう