• 締切済み

エクセルの関数について

エクセルの関数について 売り上げの集計で、毎日・毎週・毎月の売り上げを個々の製品ごとに集計したいのですが、 どのような関数になるのか、教えて頂けませんか? 例 チョコレートとおせんべいの二つの商品がありまして、それぞれの毎日・毎週・毎月の売り上げを   表に集計したいです。

みんなの回答

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.6

 回答番号:ANo.4、5です。  月毎の集計はSheet4(2)で行います。  まず、Sheet4のコピーシートを作成して下さい。(シート名はSheet4(2)になる筈です)  次に、Sheet4(2)のA1セルの内容を、「週集計」から「月集計」に変更して下さい。  次に、Sheet4(2)のE1セルを選択して、Sheet1のB3セルと同様のやり方で、ドロップダウンリストの設定を行い、「元の値」欄の内容を、 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,末日 に変更して下さい。  次に、Sheet4(2)のA4セルに入力されている数式を、次の数式に変更して下さい。 =IF($C4="","",IF(DATE(YEAR($C4),MONTH($C4)-(DAY($C4)<IF($E$1="末日",1,$E$1+1)),IF($E$1="末日",1,$E$1+1))<MIN(Sheet1!$A:$A),MIN(Sheet1!$A:$A),DATE(YEAR($C4),MONTH($C4)-(DAY($C4)<IF($E$1="末日",1,$E$1+1)),IF($E$1="末日",1,$E$1+1))))  次に、Sheet4(2)のA4セルをコピーして、A5以下に貼り付けて下さい。  最後に、Sheet4(2)のE1セルに月毎の〆日を、ドロップダウンリストから選択して入力して下さい。  後は、Sheet1の A列に商品が売れた日付を、1行毎に、年月日が揃った形式 (例えば 2010/1/1 2010年01月01日 H22.1.1 平成22年1月1日 等々) で入力し、 B列に売れた商品の名称 C列に売れた数量 を入力して行くだけで、 自動的に、日毎、週毎、月毎の集計結果が、Sheet3、Sheet4、Sheet4(2)に表示されます。  尚、日付の順序が上から下へ向かって、古い日付から新しい日付の順に並んでいないと、正しく集計されない事がありますので、御注意願います。

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.5

 回答番号:ANo.4です。  週毎の集計はSheet4で行います。  まず、Sheet4の A1セルに「週集計」 C3セルに「小計」 と入力して下さい。  次に、Sheet4のE1セルを選択して、Sheet1のB3セルと同様のやり方で、ドロップダウンリストの設定を行い、「元の値」欄には、 月,火,水,木,金,土,日 と入力して下さい。  次に、Sheet3のG1~H1の範囲をコピーして、Sheet4のG1~H1の範囲に貼り付けて下さい。  次に、Sheet3のB3セルをコピーして、Sheet4のD3セルに貼り付けて下さい。  次に、Sheet4のD2セルに次の数式を入力して下さい。(Sheet3のB2セルの数式を基にすると入力が楽です) =IF(INDEX(Sheet2!$A:$A,COLUMNS($A:C))="","",INDEX(Sheet2!$A:$A,COLUMNS($A:C)))  次に、Sheet4のA4セルに次の数式を入力して下さい。 =IF($C4="","",IF($C4-WEEKDAY($C4)+LOOKUP($E$1,{"火","金","月","水","土","日","木";4,7,3,5,8,2,6})-7*(WEEKDAY($C4)<=LOOKUP($E$1,{"火","金","月","水","土","日","木";3,6,2,4,7,1,5}))<MIN(Sheet1!$A:$A),MIN(Sheet1!$A:$A),$C4-WEEKDAY($C4)+LOOKUP($E$1,{"火","金","月","水","土","日","木";4,7,3,5,8,2,6})-7*(WEEKDAY($C4)<=LOOKUP($E$1,{"火","金","月","水","土","日","木";3,6,2,4,7,1,5}))))  次に、Sheet4のB4セルに次の数式を入力して下さい。 =IF($C4="","","~")  次に、Sheet4のC4セルに次の数式を入力して下さい。 =IF(COUNT(Sheet1!$A:$A)=0,"",MAX(Sheet1!$A:$A))  次に、Sheet4のD4セルに次の数式を入力して下さい。 =IF(OR(C$4="",D$2=""),"",SUMPRODUCT((INDIRECT("Sheet1!A"&MATCH($A4,Sheet1!$A:$A,0)&":A"&MATCH($C4,Sheet1!$A:$A))>=$A4)*(INDIRECT("Sheet1!A"&MATCH($A4,Sheet1!$A:$A,0)&":A"&MATCH($C4,Sheet1!$A:$A))<=$C4)*(INDIRECT("Sheet1!B"&MATCH($A4,Sheet1!$A:$A,0)&":B"&MATCH($C4,Sheet1!$A:$A))=D$2)*VALUE("0"&INDIRECT("Sheet1!E"&MATCH($A4,Sheet1!$A:$A,0)&":E"&MATCH($C4,Sheet1!$A:$A)))))  次に、Sheet4のA5セルに次の数式を入力して下さい。 =IF($C5="","",IF(A4-7<MIN(Sheet1!$A:$A),MIN(Sheet1!$A:$A),A4-7))  次に、Sheet4のC5セルに次の数式を入力して下さい。 =IF(OR($A4="",$A4=MIN(Sheet1!$A:$A)),"",$A4-1)  次に、Sheet4のB4セルをコピーして、B5セルに貼り付けて下さい。  次に、Sheet4のD4セルをコピーして、D5セルに貼り付けて下さい。  次に、Sheet4のD3~D5の範囲をコピーして、同じ行のE列から右方向に向かって貼り付けて下さい。  次に、Sheet4の5行目全体をコピーして、6行目以下に貼り付けて下さい。  最後に、Sheet4のE1セルに週毎の〆曜日を、ドロップダウンリストから選択して入力して下さい。  これで週毎の集計が可能になります。  月毎の集計に関しては、後で回答させて頂きます。

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.4

 まず、Sheet2の A1セルに「単価リスト」 A2セルに「商品名」 B2セルに「単価」 と入力して下さい。  次に、Sheet2のA列の4行目から下に向かって、「チョコレート」や「おせんべい」等の商品名を入力して行って下さい。  次に、Sheet2のB列の4行目から下に向かって、A列に記した商品の単価を入力して下さい。  次に、Sheet1の A1セルに「販売記録」 A2セルに「日付」 B2セルに「商品名」 C2セルに「数量」 D2セルに「単価」 E2セルに「売上」 と入力して下さい。  次に、Sheet1のD3セルに次の数式を入力して下さい。 =IF(COUNTIF(Sheet2!$A:$A,$B3)>0,VLOOKUP($B3,Sheet2!$A:$B,2,0),"")  次に、Sheet1のE3セルに次の数式を入力して下さい。 =IF(AND(ISNUMBER($C3),ISNUMBER($D3)),$C3*$D3,"")  次に、Sheet1のB3セルをクリックしてから、以下の操作を行って、ドロップダウンリストを設定して下さい。 メニューの[データ]ボタンをクリック   ↓ 現れた選択肢の中にある[入力規則]をクリック   ↓ 現れた「データの入力規則」ウィンドウの[設定]タグをクリック   ↓ 「入力値の種類」欄をクリック   ↓ 現れた選択肢の中にある「リスト」をクリック   ↓ 「元の値」欄に次の数式を入力 =INDIRECT("Sheet2!A3"&MATCH(9^9,INDIRECT("Sheet2!B:B")))   ↓ 「データの入力規則」ウィンドウの[OK]ボタンをクリック  次に、Sheet1のB3~E3の範囲をコピーして、同じ列の4行目以下に貼り付けて下さい。  次に、Sheet3の A1セルに「日集計」 G1セルに「総計」 A3セルに「小計」 と入力して下さい。  次に、Sheet3のH1セルに次の数式を入力して下さい。 =SUM($3:$3)  次に、Sheet3のA2セルに次の数式を入力して下さい。 =IF(INDEX(Sheet2!$A:$A,COLUMNS($A:B))="","",INDEX(Sheet2!$A:$A,COLUMNS($A:B)))  そして、Sheet3のA2セルをコピーして、同じ行のB列から右方向に向かって貼り付けて下さい。  次に、Sheet3のB3セルに次の数式を入力して下さい。 =IF(B$2="","",SUM(B$4:B$65536))  次に、Sheet3のA4セルとA5セルに、一旦、「2000/1/1」等の適当な日付を入力して下さい。  次に、再度Sheet3のA4セルを選択して、次の数式を入力して下さい。 =IF(COUNT(Sheet1!$A:$A)=0,"",MIN(Sheet1!$A:$A))  次に、再度Sheet3のA5セルを選択して、次の数式を入力して下さい。 =IF(OR(A$4="",MAX(A$4:A4)=MAX(Sheet1!$A:$A)),"",Sheet3!A4+1)  次に、Sheet3のB4セルに次の数式を入力して下さい。 =IF(OR(A$4="",B$2=""),"",IF(COUNTIF(Sheet1!$A:$A,$A4)=0,0,SUMPRODUCT((INDIRECT("Sheet1!A"&MATCH($A4,Sheet1!$A:$A,0)&":A"&MATCH($A4,Sheet1!$A:$A))=$A4)*(INDIRECT("Sheet1!B"&MATCH($A4,Sheet1!$A:$A,0)&":B"&MATCH($A4,Sheet1!$A:$A))=B$2)*VALUE("0"&INDIRECT("Sheet1!E"&MATCH($A4,Sheet1!$A:$A,0)&":E"&MATCH($A4,Sheet1!$A:$A))))))  次に、Sheet3のB4セルをコピーして、B5セルに貼り付けて下さい。  次に、Sheet3のB3~B5の範囲をコピーして、同じ行のC列から右方向に向かって貼り付けて下さい。  次に、5行目全体をコピーして、6行目以下に貼り付けて下さい。  これで日毎の集計が可能になります。  週毎や月毎の集計に関しては、後で回答させて頂きます。

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

例えば次の表のようにデータが入力されているとします。 A2セルに日付の項目名を入力し、A3セルから下方には10/1のように入力します。当年以外になる場合には2011/1/5のように年を付けて入力します。 B2セルにはチョコレート、C2セルにはおせんべいと入力し、下方には売上数などを入力します。 D列とE列は作業列としてD3セルには次の式を入力して下方にオートフィルドラッグします。 =IF(A3="","",YEAR(A3)&WEEKNUM(A3)) この列は毎週の売り上げを集計するために使用する作業列です。12月と1月にまたがる週については計算が複雑となりますのでそれぞれの年で違った週として集計をすることになりますが、その他の日付などの場合には問題無く対応できます。 E3セルには次の式を入力して下方いオートフィルドラッグします。 =IF(A3="","",YEAR(A3)&MONTH(A3)) この列は月毎の集計に必要な作業列です。 F1セルとG1セルは結合セルとして毎日と入力します。また、F2セルにはチョコレート、G2セルにはおせんべいと入力します。 F3セルには次の式を入力してG3セルまでオートフィルドラッグしたのちに下方にもオートフィルドラッグします。 =IF(A3="","",IF(COUNTIF($A$3:$A3,$A3)=1,SUMIF($A:$A,$A3,B:B),"")) H1セルとI1セルは結合セルとして毎週と入力します。H2セルにはチョコレート、I2セルにはおせんべいと入力します。 H3セルには次の式を入力してI3セルまでオートフィルドラッグしたのちに下方にもオートフィルドラッグします。 =IF($A3="","",IF(COUNTIF($D$3:$D3,$D3)=1,SUMIF($D:$D,$D3,B:B),"")) 同様にJ,K列については毎月、でJ2セルにはチョコレート、K2セルにはせんべいと入力します。 J3セルには次の式を入力してK3セルまでオートフィルドラッグしたのちに下方にもオートフィルドラッグします。 =IF($A3="","",IF(COUNTIF($E$3:$E3,$E3)=1,SUMIF($E:$E,$E3,B:B),"")) これらの操作で毎日、毎週、毎月の売り上げが表示されることになります。

  • edomin7777
  • ベストアンサー率40% (711/1750)
回答No.2

> どのような関数になるのか、教えて頂けませんか? どのような関数になるかは、シートにどのようにデータが入っているかが判らないと判りません。 SUMIF IF で、出来ると思います。

  • yama1718
  • ベストアンサー率41% (670/1618)
回答No.1

そういうのはピボットテーブルを使って集計できます。 ネットの検索で "Excel ピボットテーブル" で検索すると 色々と説明されたホームページが見つかります。

関連するQ&A

  • エクセルの関数を使って・・・

    まず 氏名 商品B 商品A 商品C 売り上げ数 山田 2000    0  500  2500 山田 500   100   100  700 河合 100   100   100  300 田中 500           500 山中 500           500 と続いていく簡単な売り上げの表があります。 氏名のところは入力規制でリストから選択できるようにしています。 この表を集計して    商品B 商品A 商品C 山田 3000   100  600 河合 田中 山中  このような集計表に個人別の商品別総計を出すように関数 入れたいのですが何卒よろしくお願いします。

  • エクセルの関数について

    エクセルの関数にてこういった場合、どうしたらいいでしょうか? 過去の質問をみましたが、探し方が悪いのか、見つけれませんでした。 A列には商品の個々の名前 B列には商品の売上個数 E列にそれぞれの商品が何個売れたのかという 合計を出したいのですが… 何かの関数で出来るのでしょうか?

  • Excel 関数

    Excelの関数で教えていただきたいことがあります。 A       B      C  店舗コード 売上金額 商品名 1111     1,000    AAA 1111     2,000    BBB 1112     1,000    CCC 1111     2,000    DDD 上記のように、店舗別X商品別の売上金額一覧があります。こちらから、店舗別のTop10ランキングを作成したいです。金額のTop10は集計表の店舗コードをKeyとしてLarge関数で引っ張ってきていますが、商品名も同様に引っ張ってきたいです。しかしながら、参照テーブルでは同額のものがあるため、indexとmatchの入れ子, offset, indirect関数、indexとsumproductの入れ子でもやり方が正しくないようでエラーになってしまいます。 集計表では、 商品名  金額 で並べており、金額のところに店舗コードをKeyとしたLarge関数が入っています。こちらのLarge関数で指定している値と同じ行数の別の列数(B列を引っ張りたい)を返してくれればいいのですが、正しいやり方がわかりません。。。 どなたかご存じないでしょうか? よろしくお願いします!      

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

    エクセルの関数の質問です。 売上表を作りたいのですが たとえば「250円」の商品が何個売れたか入力する際 1のセルに「2個」と入力すると 2のセルに「500円」と自動的に反映される 関数を教えて頂きたいです。 また売上表を作るのに参考になる テンプレートやページなどありましたら 合わせて教えて頂きたいです。 宜しくお願い致します。

  • エクセルの関数で困っています!

    エクセルの関数について困っています。 現在で仕事で下記のような表を作成しています。 日付 品名  区分 個数  価格  合計 1/10 りんご  1  3  100 300 1/23 ばなな  2  2  200 400 2/20 りんご  1  2  100 200 この表でりんごはりんご、ばななはバナナで集計するには SUMIF関数が必要とのことなので区分分けして集計してます。 さらにこれを日付分けして集計したいんです。 次にこんな表を作ろうと思っています。 月日 りんご合計 ばなな合計 1月  300  400 2月  200 3月 4月  そのためにはSUMIF関数にさらにSUMIF関数を重ねて書かないとダメかな?と思っているんですが、どのような数式になるかわかりません。 区分分けしてかつ日付分けして集計したいのです。 この表を例にとって数式を教えていただけると助かります。 どうかよろしくお願い致します。

  • エクセルの関数 sumpuroduct

    ご存知の方がいらしたら教えいただけますか? エクセルの関数でSUMPURODUCUT関数がありますが文字列があっても集計の対象となると思うのですが、文字列が2つ以上あっても集計されるのでしょうか?うまく計算できないのです・・・   A   B     C    D 1 201 営業所1 商品1  100 2 201 営業所1 商品2   20 3 202 営業所2 商品1  120 4 202 営業所2 商品2   80 5 203 営業所3 商品1   60 6 203 営業所3 商品2   20 7 204 営業所4 商品1  150 8 204 営業所4 商品2   80       ・       ・       ・ という表があった場合に営業所1と営業所2と営業所4の商品1の合計ってSUMPURODUCT関数で集計できるのでしょうか? それとも他の関数でもできますか? 初心者なのであまり関数のことが理解できてません。m(__)m よろしくお願いします。

  • エクセルの関数について

    エクセルの関数について 【Sheet1】 B列・・・J列 売上日  商品名 9/12   りんご 9/12   みかん 9/12   りんご 9/14   りんご という売上表があったとして、Sheet2にJ列の項目ごとに売上日を表示できる数式を教えていただきたいです。こんな↓イメージです。 【Sheet2】 A列・・B列・・・C列・・・・ 商品名 売上日1 売上日2・・・売上日31 りんご 9/12  9/14 【Sheet1】の売上表は、売上が立つごとに入力していく表なので、 一日に同じ商品名(J列)が何度もでてきますが、同一売上日は、1回だけの表示にしたいです。 売上表は月でしめるので、毎日売れたとして、売上日は最大31日です。 【Sheet1】の売上表は、パソコンの苦手なパートの方が作成しているので、いじりたくありません。 当方あまりパソコンが得意ではないため、説明が分かりにくくて申し訳ないのですが、よろしくお願いします。

  • EXCEL関数

    お世話になります。 現在、EXCEL関数で悩んでおります。 例えば       売上ランク   数量  単価 商品A    B       20    300 商品B    C       10    520 商品C    A       72    430 商品D    A       53    290 商品E    B       31    330 をEXCELに入力をしているとします。 このデータをABCランク毎に集計し、売上金額を自動計算したいと考えています。 SUMIFでは個々の数量や単価の集計はできますが、どのようにすればランク毎の売上金額を計算できますでしょうか? 決算時期に近付いており、膨大なデータを効率的に集計したいので、ご存じの方がいらっしゃいましたらご教授ください。 ※データからAランクだけを抽出し、その数量と金額の合計を出したいです。 よろしくお願いいたします。

  • エクセルの関数について こんなこと出来ますか?

    エクセルの表で、集計をしたいと思っています。 数字が入った2列と、それを集計するセルを2つ思い浮かべてください。 その数字が入った2列の右側に「1」か「2」の数字が入っていて(この場合はアンケートの答えの番号です)、左側には任意の数字(この場合は売上金額)が入っています。 集計するセルには、「1」または「2」をそれぞれ選んだ人の金額が合計ででいくらになるかをはじき出したいんですけど、こういうのって関数で出せるものなのでしょうか? (これが出来なければフィルターで出して計算しなければならないんですけど、後からどんどん追加がくるので、そのたびにやるのは面倒くさいんです・・・) お手数ですが、よろしくお願いいたします。

  • エクセルの関数について

    エクセルの関数について教えて頂きたいです。 業務でエクセル(2000)で作成してある集計表があります。 その集計表の数値を別BOOKに反映させたいのです。 セルA1を検索値として、セルB1とセルB2の値を返す関数はありますでしょうか? 集計表の行数は約500行、並びはランダムでセルC1を検索値としてセルC2の値を返す 箇所もあります。一つの値を検索値として二つの値を返すことが出来ずに困っています・・・ 宜しくお願いします。

専門家に質問してみよう