エクセル関数で週の合計を算出する方法

このQ&Aのポイント
  • エクセル関数を使って、土曜日の各セルごとに週の合計を算出したいです。
  • 関数初心者のため、調査しても解決策にたどり着けませんでした。
  • 現在手書きの売上管理書類を使用していますが、パソコンで管理するためにエクセルを活用したいと考えています。
回答を見る
  • ベストアンサー

エクセル関数についての質問です。

エクセル関数についての質問です。 添付画像の表の中の土曜日の各セル[現金販売・月極販売・合計金額]にそれぞれの合計(週の合計:月曜日から金曜日)を出したいのです。 日付は自動入力にしています。 自分なりに調べてみたのですが、関数初心者の為答えにたどりつけません。 別シートには毎日入力する表を作り、添付している表に入力されるようにSUMIF関数を入れています。毎月曜日は変動するので金額入力欄へは全て関数が入っています(もちろん土曜日の所へも)その関数は消さずに土曜日の場合は週の合計をだしたいのです。 会社への提出書類なのですが、未だに手書き書類です。 自分の日々の売上管理をパソコンでしてみようと思いました。この表は提出書類なので形式を変えること事は出来ません。 エクセル2003を使っています。 宜しくお願いいたします。

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

  • ベストアンサー
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

土曜日が6日よりも前にあるのでしたら1日からの集計を、そうでない場合には月曜日から金曜日までの集計をということでしたらC3セルに次の式を入力して、K3セルまでオートフィルドラッグしたのちに下方にもオートフィルドラッグします。 =IF(MOD(COLUMN(A1)-1,3)<>0,"",IF(AND($B3="土",COUNT($A$3:$A3)<=6),SUM(C2:C$3),IF(AND($B3="土",COUNT($A$3:$A3)>6),SUM(OFFSET(C3,-5,0):C2),これまでにC3セルに入力していた式))) 上記の式はB列の曜日で表示形式で土と表示しているのではなく、文字列として土のように表示されている場合です。 もしも、日にちが2010/1/1を1の表に表示させているのでしたら、例えば$B3="土"は次のような式に置き換えて使用すればよいでしょう。 WEEKDAY($A3)=7

m-y-mama
質問者

お礼

補足の欄へお礼を書いておりました すみません。 ご回答ありがとうございます。

m-y-mama
質問者

補足

ご回答ありがとうございます。 説明下手な文で本当に申し訳ないです。 ご回答頂いたとおりしてみました!! ありがとうございます! ありがとうございます!! 問題解決いたしました(涙) 実はこの問題で1週間近く足止めをくらっておりました(涙涙…) 関数の意味をひとつずつ調べてご回答頂いた関数を理解しようとしたのですが難しかったです(すみません) お聞きしてもいいですか? =IF(MOD(COLUMN(A1)-1,3)<>0,"",IF(AND($B3="土",COUNT($A$3:$A3)<=6),SUM(C2:C$3),IF(AND($B3="土",COUNT($A$3:$A3)>6),SUM(OFFSET(C3,-5,0):C2),これまでにC3セルに入力していた式))) (MOD(COLUMN(A1)-1,3)<>0 ←これはCOLUMN(A1)で列番号を求めて、MODで割り算の余りを出しているんですよね? その答えと0が<>不等の場合という事ですよね??  【疑問?】曜日はB列なのになぜA列なのですか? 【疑問?】なぜ割り算の余りがいるのですか? IF(AND($B3="土",COUNT($A$3:$A3)<=6),SUM(C2:C$3),←これはB3="土"かつ、COUNT($A$3:$A3)の数値データのセルを数えて1。1が6以下ならSUM(C2:C$3)。 【疑問?】C2には"売上金額"という文字しか入っていないんですが、なぜ範囲に入っているのですか? SUM(OFFSET(C3,-5,0):C2) ←この場合もどうしてC2なんでしょうか? 理解不足で申し訳ございません。

その他の回答 (5)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.6

解答No3です。ご質問への回答が遅くなって済みません。 (MOD(COLUMN(A1)-1,3)<>0 ←これはCOLUMN(A1)で列番号を求めて、MODで割り算の余りを出しているんですよね? その答えと0が<>不等の場合という事ですよね??  【疑問?】曜日はB列なのになぜA列なのですか? 【疑問?】なぜ割り算の余りがいるのですか? COLUMN(A1)としているのはこの式が初めにC3セルに入力する式ですのでその列を初めの列、すなわち、1、それはCOLUMN(A1)と書くことができます。このようにすることでD3セルの式はCOLUMN(B1)となって2、E3セルの式はCOLUMN(C1)で3、F3セルの式は4となります。MOD(COLUMN(A1)-1,3)はC3セルでは0、D3セルでは1、E3セルでは2、F3セルでは0となりますね。 お示しの表ではC3セルに値があり、F3セルで値があり、ということですからMOD(COLUMN(A1)-1,3)が0の値のときに計算が行われるようにすればよいわけです。このため、MOD関数の値が0以外のとき、すなわちMOD(COLUMN(A1)-1,3)<>0のときには計算が行われないようにしています。 IF(AND($B3="土",COUNT($A$3:$A3)<=6),SUM(C2:C$3),←これはB3="土"かつ、COUNT($A$3:$A3)の数値データのセルを数えて1。1が6以下ならSUM(C2:C$3)。 【疑問?】C2には"売上金額"という文字しか入っていないんですが、なぜ範囲に入っているのですか? C3のセルに入力した式で、B3セルが土である場合にはお示しした式では誤りとなりますので後ほど訂正した式を示しますが、仮にC5セルの式ではB5セルが土であればSUM(C4:C$3)となって、5行目の式では3行目から4行目のデータが集計されることになりますね。すなわち、式が入力されているより1行上から3行までの値が集計されることになります。 SUM(OFFSET(C3,-5,0):C2) ←この場合もどうしてC2なんでしょうか? C3セルへの入力の式では1行上までのデータを集計することになりますので、そういう式になります。 ところでB3セルが土の場合にはお示しした式では誤りとなりますので、C3セルへの入力の式は次のように変更してください。 =IF(OR(AND(ROW(A1)=1,$B3="土"),MOD(COLUMN(A1)-1,3)<>0),"",IF(AND($B3="土",COUNT($A$3:$A3)<=6),SUM(C2:C$3),IF(AND($B3="土",COUNT($A$3:$A3)>6),SUM(OFFSET(C3,-5,0):C2),""))) この式では1日が土曜日であるときは売上の行は空白になるようにしています。

m-y-mama
質問者

お礼

遅くなりましてすみません!! ご回答ありがとうございました^0^ 説明頂いた内容を何度も読んでしっかりと理解して表に関数をいれました! 無事、週の合計がでました(涙) 本当にありがとうございました。

  • avanzato
  • ベストアンサー率54% (52/95)
回答No.5

#4ですが一部訂正です。 B6=TEXT(A6,"AAA") C6=IF($B6<>"土",★現状のSUMIF★,IF(CELL("ROW",C6)<=8,SUM(C$3:E5),SUM(C1:E5))) F6=IF($B6<>"土",★現状のSUMIF★,IF(CELL("ROW",F6)<=8,SUM(F$3:H5),SUM(F1:H5))) I6=SUM(C6:H6) 4行目から33行目は上記6行目の数式のコピーでお願いします。 3行目は仮に1日が土曜だったとき合計を求める計算式が出来ない為土曜の判定は不要です。 3行目は現状の計算式のままで大丈夫です。

m-y-mama
質問者

お礼

詳しいご回答ありがとうございます!! さっそく関数を理解する勉強へ。。。

  • avanzato
  • ベストアンサー率54% (52/95)
回答No.4

こんにちは。 IFで土曜の判定をつければ問題ありません。 IF(土曜以外のとき,現状のSUMIF,1週間の合計)です。 C32が30日になるかと思いますがC32の数式を次のようにしてください。 =IF($B32<>"土",★現状のSUMIF★,IF(CELL("ROW",C32)<=8,SUM(C$3:C31),SUM(C27:C31))) 他のセル(土曜以外のセルも共通)はC32のコピーで良いと思います。 例えばC32の合計範囲はC27~C31になりますが上のほうにコピーしていくとC6でC1~C5になりC5の場合は計算式が組めなくなります。 その為、わざとC32で数式を組み上方向にコピーします。 C5にこの計算式をコピーすると#refになりますが処理上問題ありません。 尚、この数式を使うにあたりA列とB列に条件があります。 A列の入力値は例えば2009/01/09のような「日付」が入力されておりセルの書式設定「ユーザー定義:d」(日にちのみ表示)にすること。 B列で例えばB3であれば=TEXT(A3,"AAA")として値を曜日にすること。 この2点が条件で上記数式が実行可能です。

m-y-mama
質問者

お礼

ご回答ありがとうございます。 いろんな関数の使い方があるんですね。とても参考になりました。 まだまだ関数の勉強をはじめたばかりで理解するのに時間がかかってしまいますが・・・頑張って理解して使って行きたいと思います!! ありがとうございました。

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.2

ご質問の内容がいま一つ不明確です。 集計表の土曜日以外のセルには現在どのようなSUMIF関数が入力されているのでしょうか? また、集計表の最初の土曜日は、先月の月末の月曜から当月の金曜までの集計をしたいのでしょうか? このようなケースでは、場合によて複雑な数式を使う必要がありますので、実際に利用しているデータベースシートのレイアウトと、入力されているデータ例(日付の入力形式など)を提示されたほうがよいと思います。 また、集計シートのA列、B列はどのように入力しているのでしょうか? 今回のケースでは、たとえば、どこかのセルに「1」と入力すれば、自動的にA列とB列に1月の日付と曜日(セルの色も含めて)を自動的に表示する設定にしておくのが最も簡単な対応だと思います(この設定がしてあるという前提で解凍してもよいのかお知らせください)。

m-y-mama
質問者

お礼

補足の欄へお礼を書いていました すみません。 ご回答ありがとうございました。

m-y-mama
質問者

補足

ご返答ありがとうございます。 返信が遅くなり申し訳ありません。 補足欄にも添付できれば今作っているシートを見ていただけるんですが・・・できるのでしょうか? 説明下手ではありますが、頑張って作ったシートを表現してみました。 ご回答下さったNO1さんの補足欄に記入していますので宜しくお願いします。 >集計表の土曜日以外のセルには現在どのようなSUMIF関数が入力されているのでしょうか?   =SUMIF(現金販売入力シート!$G$3:$G$809,DATE(月度行動実績確認表!$A$1,月度行動実績確認表!$D$1,$A9),現金販売入力シート!$H$3:$H$809) >また、集計シートのA列、B列はどのように入力しているのでしょうか?   A列:日付 B列:曜日 >今回のケースでは、たとえば、どこかのセルに「1」と入力すれば、自動的にA列とB列に1月の日付と曜日(セルの色も含めて)を自動的に表示する設定にしておくのが最も簡単な対応だと思います(この設定がしてあるという前提で解凍してもよいのかお知らせください)。   上記の様に1(月)と入力した時に自動的にA列とB列に日付と曜日が入ります。土曜・日曜・祝日の行にはセルの色が指定した色で表示される様にしています。 宜しくお願いいたします。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

ご質問の内容で一部分からない点があります。 お示しのシートはまとめのシートで金額の欄には式が入力されているとのことですが、土曜日の行にも式があるわけですね。その式を消さずに別の式を入れるように解釈できるのですが、そのようなことは不可能ですね。実際にはどのようにしたいのでしょう。別のシートの状況も含めて具体的に示してくれませんか?

m-y-mama
質問者

補足

ご回答ありがとうございます。 説明不足で申し訳ございません・・・。 添付した表を合わせて3シート用意しました。 【1つめ(現金販売入力)のシート】    A     B      C      D        E        F       G        H 1  2010年1月  2  日付   曜日   会社名  会社の階  現金売上  その他の売上  合計   日付(各セル毎) 3  1月1日   金     A社    7階   直接入力    直接入力   (=E3+F3)   1月1日(←=A2) (日付:1日分を結合してます) 4  1月1日   金     A社   5階   直接入力    直接入力   (=E4+F4)  1月1日(←=A2) 【2つめ(月極の売上入力)】     A    B         C          D      E     F      G      H  1   日付  会社名    お客様名    商品名   単価   個数    売上金額  日付(各セル毎) 2  1月1日  B社    BBさん     ○○○    500          (=E2*F2)    1月1日(←=A2) (日付:1日分を結合してます) 3 1月1日 【3つめ(月度行動実績確認表:添付表)】    A   B     C      D     E    F    G  1 2010       年     1     月 8  日付  曜日  現金売上  月極売上 合計金額 9   1   金   =SUMIF(現金販売入力シート!$G$3:$G$809,DATE(月度行動実績確認表!$A$1,月度行動実績確認表!$D$1,$A9),現金販売入力シート!$H$3:$H$809) 10  2   土 11  3   日 12  4   月 13  5   火 14  6   水 15  7   木 16  8   金 17  9   土 というふうにしてみました。 この補足欄にどのように記入したらいいのか分からなく、遅くなってすみません。分かりますでしょうか・・・? >土曜日の行にも式があるわけですね。その式を消さずに別の式を入れるように解釈できるのですが、そのようなことは不可能ですね。実際にはどのようにしたいのでしょう。 私の願いは曜日の欄が"土"ならば週の合計を表示、そうでない場合なら=SUMIF(現金販売入力シート!$G$3:$G$809,DATE(月度行動実績確認表!$A$1,月度行動実績確認表!$D$1,$A9),現金販売入力シート!$H$3:$H$809)の金額を表示したいのですが・・・可能なのでしょうか? 実際配られる提出書類の土曜日欄に週の合計を記入しています。 説明下手で申し訳ございません。

関連するQ&A

  • エクセル集計ひと月を4週に分け各週ごとの集計

    エクセルでデータを作っています。 今、知りたいことが2つあるのですが、1つは関数、もうひとつは シートのコピーです。 1.A列、B列、C列にそれぞれ商品、金額、販売日が入っています。 今、1か月を4週に分け、(例えば、1/1~1/7をA週、1/8~1/14までをB週・・・) 各期間の合計販売金額を出す。(出来れば、販売日を入力した時点で、それは何週になって 現時点でのその週の販売トータル金額がいくらになるかをどこか違うところに表示したい)と いう、関数を探しています。 2. エクセルを2つ作り(原本入力用とコピー用)一つの表に入力するたびに、もう一方のエクセルの表にも入力できたら・・・ と思っています。 毎週の提出書類の作成に時間をとられるため、何かよい方法が無いか探しています。 どなたか知っていたら、教えてください。

  • エクセルの関数を教えてください。

    エクセル書類について教えていただきたいのですが… 下記のような表から担当者別に売上合計金額を出したいのですが エクセル初心者で関数があまりわかりません。 ランダムに並んだ担当者を抜粋してその月の担当者ごとの合計売上金額を別シート(同じシートでもかまいません)で 自動計算できる関数があると大変助かるのですが、そういった関数(やり方)はありますでしょうか? お教えいただけると幸いです。 よろしくお願いします。

  • エクセル関数

    エクセル関数についておしえてください。 添付した表についての質問です。 (1)ある時間帯の中の「C」の合計を抽出。 「15:00」~「15:59」の時間帯で「▲」の合計を抽出。 (2)ある曜日のある時間帯の中の「C」の合計を抽出。 日曜日の「15:00」~「15:59」の時間帯で「▲」の合計を抽出。 上記2つの関数がどうしてもわかりません。 いろいろ試してみているのですが、関数初心者のため困っています。 よろしくおねがいします。

  • Excelのデータで表を見やすいように「テーブル」化しました。

    Excelのデータで表を見やすいように「テーブル」化しました。 そこで例えば1ヶ月間の買ったものと金額が表になってる場合、月曜日に買ったものの値段の合計を調べたいと思うのですが、SUM関数を使って合計金額を出そうとし、その曜日でフィルタをかけて月曜のだけを表示した状態で合計を求めるのですが、SUM関数で表をドラッグ?すると合計金額の中に別の曜日の金額も入ってしまいます。 例えば =SUM(A1:A100)だけど月曜日なのはA1~A20とA85~A100 月曜だけを求めたいのに、A1~A100すべての合計金額が出てしまう 解決策を誰か教えてくださいお願いします。

  • エクセルの日付用の関数

    仕事で週報という日計表を毎週提出することになりました。そこで、毎週、その週の月曜日の日付が先頭にくるようになる関数ってありますか。もうちょっと詳しく説明させていただくと、1枚の用紙を6等分して、各先頭セルに○月○日(月)~(土)という感じで入っていきます。月曜の日付が入力できたらそれぞれも(火)~(土)まで自動的に入るっていうのできますか。よろしくお願いします。

  • Excelの関数がわかりません

    添付画像の、データ表の「金額」の部分を計算する関数を考えているのですが、 どうにも関数がわかりません・・ マスタ表から 対応するカテゴリの、個数が収まる範囲の金額を関数で計算したいのですが・・ これってExcelの関数ではできないのでしょうか・・

  • エクセルで、これを作るにはどの関数を?

    エクセルで計算表を作成しています。項目、金額、がメインにあって、単純に合計でSUMを使えば、全ての金額が足されるわけですが、たとえば、金額の前に1つセルを足して、そのセルに何か識別マーク(EX.*とか@など)を入れると、そのマークが入力された隣の欄の金額のみが合計される、という計算式を作りたい場合には、どんな関数を使用したらよいのでしょうか。教えてください。

  • エクセルに関する質問です

    エクセルで、下記の項目を自動で表示させるようにする良い方法を教えてください! 添付の写真のような表があったとします。 この表の項目には、 ・購入日 ・購入金額 ・販売日 ・販売金額 ・利益 ・利益率 があります。 商品を仕入れたがまだ販売出来ていない場合(残在庫品)は、 販売日・販売金額・利益・利益率の項目は空欄のままです。 この表の毎月の下記の項目を、別シートで自動で表示させるようにしたいのです。 ★月別購入金額合計 ★月別販売金額合計 ★月別利益額合計 ★月別利益率 いつ見ても、すぐに○○月の購入金額合計はいくら、○○月の利益額はいくら、等、 常に把握しておきたいのです。 購入(仕入れ)だけして販売出来てない金額も、月別購入金額合計には反映させる必要があります。 面倒な質問とは思いますが、 詳しい方ご教授お願い致します!

  • エクセル関数について

    関数初心者です。教えてください。 1月から12月までのシートがあり、最後に合計のシートがあります。 全シート同じ表になり、金額を入力していくのですが、 最後の合計シートの月別に入力した同じセル上に1月から12月の合計を出したい場合は どのような関数、引数になるのでしょうか? どうぞ宜しくお願いします。

  • エクセルの関数

    下記の様なエクセルで条件が2つ以上ある時にどの様に関数を使えば良いかわからなかった為 教えて下さい。 条件は日ごとの 品川駅の子供の合計金額を算出したいです。 サンプルとして一覧表を添付します。 単価表は別シートにありますが、添付できなかったので、下記の様な感じのシートになります。     大人  子供 東京駅 190   100 品川駅 180   90 横浜駅 160   80 大宮駅 150   70 ※実際に作成するエクセルでは利用区間は関係無い為、単価は固定となります。 宜しくお願い致します。

専門家に質問してみよう