• ベストアンサー

エクセルで集計

エクセルで集計 シート1:A列に日付2000行程度、B列に品名A,B,C,D…500種類程度、C列にその内容。日毎に行は増えていきま、同じ品名が何度も登場してきます。 シート2:ここに新しくシート1の集計をして、同じ品名の多い順に並べ替えてリストを作成したいと思います。 シート1に新しく行が増えると同時にシート2の集計に反映させたいのですが、いい方法はありますか?

noname#150307
noname#150307

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

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

このように複雑な内容のご質問でしたら初めからその条件を示してご質問いただきたいですね。余分な時間を使うことになりますので。 ところで、シート1ではその後のご質問を組み入れてA1からG1の備考まで、項目名があるとします。 H2セルには次の式を入力します。 =IF(COUNTIF(D$2:D2,D2)=1,COUNTIF(D:D,D2),"") I2セルには次の式を入力します。 =IF(H2="","",RANK(H2,H:H)) J2セルには次の式を入力します。 =IF(D2="","",IF(COUNTIF(D$2:D2,D2)=1,COUNTIF(D:D,D2)-ROW(B1)/10000,INDEX(J:J,MATCH(D2,D:D,0))-ROW(B1)/1000000)) K2セルには次の式を入力します。 =IF(J2="","",RANK(J2,J:J)) H2セルからK2セルを選択してそれらの式を下方にオートフィルドラッグします。 シート2では1行目にはシート1での項目名を並べ、また、H1セルにはランク、J1セルには出現回数とでも入力します。 そこでA2セルには次の式を入力し、J2セルまでオートフィルドラッグしたのちに下方向にもオートフィルドラッグします。 =IF(ROW(A1)>MAX(Sheet1!$K:$K),"",IF(COLUMN(A1)<=7,INDEX(Sheet1!$A:$G,MATCH(ROW(A1),Sheet1!$K:$K,0),COLUMN(A1)),IF(COLUMN(A1)=8,IF($D1<>$D2,INDEX(Sheet1!$I:$I,MATCH($D2,Sheet1!$D:$D,0))&"位",""),IF(AND(COLUMN(A1)=9,$H2<>""),COUNTIF(Sheet1!$D:$D,$D2)&"回",""))))

noname#150307
質問者

お礼

ありがとうございました。 バッチリでーす(^-^)V はじめからそのままのかたちで質問すればよかったですね。 次回もよろしくお願いします(^^ゞ

その他の回答 (3)

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

シート1で最初にA列を重点に昇順での並べ替えをして日付が順序よく並んでいることが必要です。

noname#150307
質問者

お礼

ありがとうございます。 やってみましたが、うまく並んでくれませんでした( ノД`)シクシク… 実際の表は以下のようになっています。 A列整理番号、B列日付、C列時間、D列品番、E列品名、F列種類、G列備考 行は2000行程度で毎日増えます、D列品番でランキングになっていけばいいのですが・・・ ついでにD列品番で1位~品番の出土回数も表示されているといいです。

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

回答No1です。 シート1でのD2への入力の式ですが同じ回数が店によって見られた場合にシート2での並びの順番が変わってしまいますのでシート1でD2に入力する式は次のように変更して下方にオートフィルドラッグしてください。 =IF(B2="","",IF(COUNTIF(B$2:B2,B2)=1,COUNTIF(B:B,B2)-ROW(A1)/10000,INDEX(D:D,MATCH(B2,B:B,0))-ROW(A1)/1000000))

noname#150307
質問者

お礼

早速の解答ありがとうございます。 実際の表は、もうすこし複雑なので セル番号などを変えて行なっているのですが どちらの式を入力しても うまく多い順に並んでくれません トホホ・・・

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

シート1ではA1セルからC1セルまでは項目名で各データは2行目から下方にあるとします。 作業列としてD2セルには次の式を入力します。 =IF(B2="","",COUNTIF(B:B,B2)-ROW(A1)/10000) E2セルには次の式を入力します。 =IF(D2="","",RANK(D2,D:D)) D2およびE2を選択してからそれらの式を下方にオートフィルドラッグします。 シート2では1行目にはシート1と同じ項目名を入力します。 A2セルには次の式を入力して右横方向にオートフィルドラッグしたのちに下方向にもオートフィルドラッグします。 =IF(OR(COLUMN(A1)>3,ROW(A1)>MAX(Sheet1!$E:$E)),"",INDEX(Sheet1!$A:$C,MATCH(ROW(A1),Sheet1!$E:$E,0),COLUMN(A1)))

関連するQ&A

  • Excel集計方法を教えてください!

    以下のようなシートがあります。 シート(1) A列、B列、C列、D列、E列 品名、商品名、A店、B店、C店 --------------------- 果物、いちご、8個、7個、6個 果物、ぶどう、2個、8個、2個 野菜、大根、3個、3個、2個 野菜、人参、2個、5個、8個 野菜、白菜、1個、2個、0個 肉、牛肉、2個、5個、10個 それを、以下のシート(2)のように集計するには、 シート(2)の各B列、C列、D列にどのような数式を埋めればいいか教えてください!! シート(2) A列、B列、C列、D列 品名、A店、B店、C店 --------------------- 果物、10個、15個、8個 野菜、5個、10個、10個 肉、2個、5個、10個

  • Excelでこのような集計はどうしたらいいですか?困ってます!

    こんにちは。 以下のような集計を行いたいのですが、どうすればよいかわかりません。教えてください!! Sheet(1) A列、B列、C列 カテゴリ、数、品名 =================== 野菜、1、大根 野菜、2、ねぎ 果物、2、いちご 肉、3、牛肉 果物、1、りんご 肉、2、豚肉 ・ ・ ・ Sheet(2) A列、B列、 カテゴリ、金額 =================== 野菜、300 果物、300 肉、500 ・ ・ ・ 各品物は、100円均一とし、Sheet2でカテゴリ毎に必要な金額を求めます。Sheet1は、およそ1000行ほどあるので、一括で数式で求めたいのですが、どのような関数を使えばよいのかわかりません。 お願いします!

  • エクセル集計

    エクセルで質問です。 sheet1   列   A           B 行          (名称)       (判定) 1   あいうえお        A 2   あいうえお        C 3   かきくけこ        C  4   かきくけこ        B 5   かきくけこ        B という元データがあり、みてのとおり同じ名前のものが複数あり各々で判定が違います。 次に、別のシートには(※同じシートで列をAAとしてもよいが) sheet2   列  A       B    C    D 行                判定 1             A    B    C 2   あいうえお    1         1 3   かきくけこ         2    1 という具合に、A列には名前が複数あってもひとつとしその右側に判定の種別ごとに数を記入する。 という集計表を作成したいのですが、どなたか教えてください。 ちなみにマクロはできませんのであしからず・・・・

  • Excel 2007 マクロ 表の集計について

    Excel 2007 マクロ 表の集計について 2つのシート(Sheet1とSheet2)の情報を集計して Sheet3に反映するマクロを考えています。 (1)Sheet1のC列、D列、E列とSheet2のC列が空欄の場合は  Sheet3に反映しません。 (2)Sheet1のC列、D列、E列とSheet2のC列のいずれかに数値が  入っている場合にはSheet3に行を反映します。  ※Sheet3に反映する際に、Sheet1とSheet2のキー(A列)は  反映しません。  各Sheetの表は画像を添付します。  どのようなマクロを作成すればよろしいでしょうか。  マクロの超初心者です。  マクロのサンプルをご紹介頂けますでしょうか。

  • EXCELでこんな集計はどうするのでしょうか

    商品管理の表で以下のようになっています。 A1   B1    C1     D1    E1 担当者 分類番号 商品コード 整理番号 以下各月毎の売り上げ そしてこの表は1500行程度あり、B列、C列でソートしています。 この表をB列の分類番号毎、C列の商品コード毎で各月の売上合計を上記の表のシートとは別のシートに集計したいのですが、どのようにしたらよいのでしょうか。シートをコピーして集計するのはできるのですが、そうしたら容量が(サイズが)大きくなりすぎるため、できれば避けたいと思っています。

  • ExcelのVBAで集計をしたいです。

    EXCELで、VBAを使用して元データのシートから、集計シートを作成したいです。 Sheet1 A B C D E F 1 品名 サイズ1 サイズ2 サイズ3 元のサイズ 売り上げた量 2 A 1 100 150 200 1000 50 3 B 2 100 200 100 1500 10 4 A 2 200 300 500 2000 100 5 A 1 150 150 100 1000 80 6 A 2 150 150 600 3000 100 Sheet2(集計用に新規作成されたシート:作成時は空シート) A B C D 1 品名 サイズ1 元のサイズ 売り上げた量の合計 2 A 1 1000 130 3 B 2 1500 10 4 A 2 2000 100 5 A 2 3000 100 元のサイズのものがどれだけ使用されて売れたのかを集計しようとしています。 ちなみにサイズ1は変更されません。 条件が複数個になるので、Sheet2の合計は、SUMPRODUCTを使用することになると思うのですが、 C列までの、品名、サイズ1、元サイズが重複しないように抽出するためには、 どのようにしたらよいのでしょうか?

  • エクセルでの集計について

    初心者です。 エクセルでの集計について教えてください。 sheet1にプルダウンやフォームで入力し、sheet2へ集計させたいのですがやり方がわかりません。 例えばプルダウンの場合、sheet1のA1で都道府県を選ぶとB1には対応する市町村が選択できるようにします。C1には任意で数字を入力していくとします。それを何行か入力します。はsheet2に、A列には都道府県別、B列にはAに対応する市町村、C列には任意の数字が合計されるようなことをしたいのですが・・・。こんな説明でご理解いただけるか心配ですが、なんとかやさしくお教えください。(フォームでの入力がスマートで格好がよさそう・・・。)マクロ等々もぜひともやさしくお教えください。

  • SUMPRODUCT関数で複数条件適用されない

    Sheet1 A列:日付 B列:注文番号 C列:品名 D列:整理番号 E列:数量 集計 A列:品名 B~AF列:日付(1~31日) 【集計】B~AF列の日付、A列の品名が 【Sheet1】A列の日付、C列の品名と一致したら 【Sheet1】E列の数量を【集計】の該当するセルに抽出する 式をSUMPRODUCT関数で作成しました。 例)10/1 りんご 20 【集計】B3セルに以下の数式を入れましたが なぜか数量が「0」のままになります。 =SUMPRODUCT('Sheet1'!$A$3:$A$200='集計'!B$2)*('Sheet1'!$C$3:$C$200="りん ご")*('Sheet1'!$E$3:$E$200) 特に数式のミスはないと思うのですが どうしても正しい値が入りません。 数式に間違いがあればご指摘いただけませんでしょうか。 また、他に良き方法があればご教示いただけるとありがたいです。

  • エクセル 集計 関数で・・・

    経費の集計を随時反映させていきたいのですが、 sheet1に毎日の経費を入力していて、sheet2にその項目ごとに集計を出す    A     B     C 1 ガソリン  3000    2 交通費   500   精算済 3 ガソリン  2000 4 交通費   300 5 交通費   500 sheet1には↑こんな感じです。 さらにC列のように「精算済」になった分は集計に出ない方法。 本など見て調べてはいるのですがなかなかできず困っています、、、宜しくお願いします

  • EXCELで別ファイルからデータを抽出するには?

    EXCELについて条件に一致する列の内容を抽出する方法を教えてください。 シート1の行に日付があり、列に品名と日ごとの数を入力してあるシートがあります。 このシートの内容を別のシートに日付を入力すると、その日の内容が表示されるようにしたいのですが、うまくいきません。 [シート1]     1    2    3   4 (←日付) A品  10  20  30   40… B品  30   10  40  20… C品  15  16   17  18… D品  20  21   22  23… [シート2]     *(←日付を入力) A品 (   ) B品 (   ) C品 (   ) D品 (  ) シート1とシート2はそれぞれ別ファイルで同時に開いている状況です。 シート2の*部分に日付を入れると該当する日付の各品名の数量が( )の部分に表示されるようにするにはどうしたらよいですか?

専門家に質問してみよう