• ベストアンサー

EXCELの集計で悩んでいます

EXCEL2003で、 ・商品ID ・商品名 ・支店 ・在庫数 ・在庫金額 ・販売開始日 を商品IDごとに在庫数と在庫金額の集計を行いました。 行数は約1万、集計行は約1千あります。 ここまでは問題なく出来たのですが、 集計行には、商品ID集計として、在庫数と在庫金額の合計しかなく、 集計行のみにした場合、商品名と販売開始日が表示されません。 集計行に、商品名と販売開始日を追記するマクロを書きたいのですが (関数でもかまいません)、どなたかお知恵をお借りできませんでしょうか。 よろしくお願いいたします。

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

  • ベストアンサー
  • onlyrom
  • ベストアンサー率59% (228/384)
回答No.1

方法はいくつかありますが簡単なサンプルをひとつ。   見出し: A1~F1 データ: 2行以降 A列に「ID番号 計」と表示されてるはずなので、 その「計」という文字を検索し ヒットしたら、そのひとつ上の行の「商品名」と「販売日」を ヒットした行の該当列に表示すればいいですね。   '----------------------------------------- Sub Test()  Dim KeiCell As Range  Dim myRange As Range  Set myRange = Range(Cells(1, "A"), Cells(Rows.Count, "A").End(xlUp))    Set KeiCell = myRange.Find("計", , xlValues, xlPart)    If KeiCell Is Nothing Then Exit Sub  Do   KeiCell.Offset(0, 1).Value = KeiCell.Offset(-1, 1).Value   KeiCell.Offset(0, 5).Value = KeiCell.Offset(-1, 5).Value   Set KeiCell = myRange.Find("計", KeiCell)  Loop While KeiCell.Value <> "総計" End Sub '------------------------------------- 但し、A列の最終行には【総計】という文字があること。 集計コマンドを実行すると必ず最後に【総計】が表示されますので 問題はないと思いますが。。 以上。  

bbjyana
質問者

お礼

このたびはご回答ありがとうございました。 無事集計行に表示させることが出来ました。 また、いい勉強になりました。 重ねて御礼申し上げます。 ありがとうございました。

その他の回答 (3)

  • SePapa
  • ベストアンサー率50% (47/94)
回答No.4

こんにちは。 集計とはエクセル標準でついている集計機能のことなのであれば マクロなしでも以下の5ステップで容易に対応は可能かと思います。 1)まずは一覧を商品ID昇順、販売開始日昇順で並びかえします。 2)商品名(列B)の横に商品ID(列A)と商品名を連結する列Cを追加し、  各セルには以下のような関数(文字の連結)を指定する。  ・2行目の場合の例  =CONCATENATE(A2," ",B2)   ※後で、この列で集計することで、集計行に商品名も印字されます。 3)販売開始日(列G)の横に集計行表示用の販売開始日(列H)を追加し  その列の各セルには以下の関数を指定する。  ・2行目の場合の例  =IF(A1<>A2,G2,"")   ※1行目の商品ID(A列)と2行目が同じか比較し、    違うのであればIDが切り替わったとみなし同じ行の販売開始日(G列)の値を表示する。    それ以外は空白とする。 4)集計の設定で、集計グループは商品ID+商品名の列(列C)とする。  集計するフィールドは在庫数、在庫金額に加え、  集計行用の販売開始日列(列H)も集計する。 5)集計行の販売開始日のセルの書式設定を日付に変更する。 結果、集計行のみ表示した場合、商品ID以外に商品名も 表示されるようになり、販売開始日も表示されます。 販売開始日も集計してしまう、というのがポイントでしょうか。 ピポットテーブルの方が早いかもしれませんが、 ご参考まで。    

bbjyana
質問者

お礼

お忙しいところ、お時間を割いていただきまして 誠にありがとうございました。 今後また、お伺いすることもあると思いますが、 その際はどうぞよろしくお願いいたします。

  • gyouda1114
  • ベストアンサー率37% (499/1320)
回答No.3

ピボットテーブルで試してみては Excel(エクセル)実用編:家計簿の作成(ピボットテーブルを使う) http://www.eurus.dti.ne.jp/~yoneyama/Excel/jituyou/kake-pib.htm

bbjyana
質問者

お礼

このたびは、ご回答ありがとうございました。 結果、ピボットテーブルは利用しなかったのですが、 勉強のいい機会になりました。 今後もどうぞよろしくお願いいたします。

  • ASIMOV
  • ベストアンサー率41% (982/2351)
回答No.2

ピボットテーブルはどうでしょう?

bbjyana
質問者

お礼

このたびはアドバイスありがとうございました。 これを機会に、もっと勉強しようと思います。 今度ともどうぞよろしくお願いいたします。

関連するQ&A

  • エクセルで集計をしたいのです

    お世話になります。 Accessからエクスポートした表があります。 (集計元表) [商品名]|[支店名]|[日付]|[売上数]| 商品A|支店1|2011/08/01|6| 商品A|支店1|2011/08/05|2| 商品A|支店2|2011/08/01|3| 商品B|支店1|2011/08/01|9| 商品B|支店2|2011/08/01|1| … これを以下のように、商品毎に表にしたいのです。 (集計表:商品A) 商品A|8/1|8/2|8/3|8/4|8/5|合計| 支店1| 6 | 0 | 0 | 0 | 2 | 8 | 支店2| 3 | 0 | 0 | 0 | 0 | 3 | 合計 | 9 | 0 | 0 | 0 | 2 | 11 | (集計表:商品B) 商品A|8/1|8/2|8/3|8/4|8/5|合計| 支店1| 9 | 0 | 0 | 0 | 0 | 9 | 支店2| 1 | 0 | 0 | 0 | 0 | 1 | 合計 | 10 | 0 | 0 | 0 | 0 | 10 | 合計の行/列は最後にsumしますが、集計元表から 集計表カドの商品名、日付、支店を判別してセルに売上数を収める 手段のヒントを頂ければ幸いです。 セル関数でもVBAでもなんでも構いません。 宜しくお願いします。

  • EXCELの集計で困っています。

    こんにちは。 どなたかお知恵を拝借できませんでしょうか。 EXCEL2003 SP3 の集計で悩んでおります。 列 A) 商品区分 B) 大分類 C) 小分類 D) 品番 E) サイズ F) 仕入年度 G) 商品名 H) 商品カラー I) 店舗 J) 価格 K) 特別価格 L) 在庫点数 M) 在庫金額 N) 原価 O) 販売開始年度 というファイルがあります。 これを、D)品番とF)仕入年度の単位で在庫点数と在庫金額を集計し、 かつ、集計行にE)サイズとI)店舗を除く、その他全ての列項目の値を表示させたいのです。 (つまり、集計データの1行上の値を持ってくればOK。) これをメニューから行おうとしたのですが、集計項目は1つしかなく・・。 おそらくVBAを用いなければ無理だと思うのですが、 お恥ずかしい話、VBAの知識を持ち合わせておりません。 参考までに、データは約1万件あります。 また、データの並びは大分類>小分類>品番>サイズ>仕入年度で ソートされており、このままの集計ですと、品番・サイズ・仕入年度での 集計となってしまいますので、サイズを除いた 大分類>小分類>品番>仕入年度、への再ソートが必要かと思われます。 お手数をお掛けいたしますが、なにとぞよろしくお願いいたします。

  • エクセルで集計

    エクセルで集計 シート1に1つの列に各支店名、2つ目の列に各商品名、3つ目の列に商品個数がランダム入力されているデータをシート2に自動で整理し集計したいのですが、2つの列の集計は関数SUMIFできるのですが、例えば、「各支店の商品個数の集計」など、「各支店の各商品の個数の集計」などの3つの列の集計方法を分かる方、いましたら教えてください。宜しくお願いします。

  • エクセルの関数について教えてください

    エクセルについて教えてください。 下の表は商品毎の支店別販売数量のリストです。  ┃  A  ┃  B  ┃  C  ┃  D  ┃  E  ┃  ╋━━━━━╋━━━━━╋━━━━━╋━━━━━╋━━━━━╋ 1┃(空欄) ┃ 商品名 ┃ 支店A ┃ 支店B ┃ 支店C ┃  ╋━━━━━╋━━━━━╋━━━━━╋━━━━━╋━━━━━╋ 2┃(空欄) ┃ 商品1 ┃  1  ┃  2  ┃  3  ┃  ╋━━━━━╋━━━━━╋━━━━━╋━━━━━╋━━━━━╋ 3┃(空欄) ┃ 商品2 ┃  9  ┃  4  ┃  3  ┃  ╋━━━━━╋━━━━━╋━━━━━╋━━━━━╋━━━━━╋ 4┃(空欄) ┃ 商品3 ┃  4  ┃  8  ┃  6  ┃  ╋━━━━━╋━━━━━╋━━━━━╋━━━━━╋━━━━━╋  1行目はタイトル、2行目以下がデータ部分です。実現したいのは商品毎の最も販売数の大きい支店の支店名を商品名の左(A列)に表示させたいのです。  すなわちセルA2には「支店C」を、A3には「支店A」を表示させたいのですが、どんな関数を使えばいいでしょうか。  実際のデータは商品数(行数)が500位、支店(列)は20位あります。 よろしくお願いします。

  • ACCESSかEXCELで集計について

    MS AccessとEXCELでの集計をおしえてください。 日付(時間付)、店舗、販売員、区分、商品名(毎日新しいものが計上される)、売上個数のデータが大量にあるとして、日付(時間を除く)毎にそれぞれを集計していきたいのですが、どうすればよいでしょうか? 販売員、商品名が大量にあるため、エクセルではSUMIFなどの関数を使わず一気に集計をしたいのです。 10/1 15:00、大阪、販売員A、イ、商品A、5 10/1 15:05、大阪、販売員A、イ、商品A、10・・・ -------------------------------------------------- 10/1、大阪、販売員A、イ、商品A、15 ・・・としたい AccessとEXCEL、それぞれの方法をおしえていただけませんか。 よろしくお願いいたします。 バージョン:2010 / OS:windows7 アクセスは基本操作(ちょっとアヤシイ・・・)とSQLが若干使える程度です

  • エクセルと集計

    こんにちは。 エクセル初心者で勉強中です。 今、下記の画像のようなシートを作成しました。 支店別の売上表です。 B列とC列を結合して、そこに日付(表示形式 日付)を入力しています。 それぞれの金額はF列に入っていて、小計が間に入っています。 ここで、したい処理なのですが、画像右側部分のように簡単な検索画面を 作って、支店別、売上日別の金額を調べたいのです。 検索条件は支店名と売上日(O/O~O/O)という形です。 計算の対象となるデータの行数ですが、そんなに多くはないですが、 E列の3行目から最終行までとします。 ピボットテーブルも試してみましたが、うまくいかず、できれば K7セルに数式を入れるか、VBAでやりたいのですが。 よろしくお願いします。

  • 桐の集計(集計行設定のこと)について教えて下さい

    こんにちは。 Winで桐8を使ってます。 集計(集計行)のことを教えて下さい。 データを、小計・中計・大計と行集計をかけました。 このときの中計の集計行に、小計の行数を入れることは可能でしょうか? 例)顧客番号、顧客種別、月、金額・・・・ のように同じ顧客が月別に、複数回入金します。 (入金されたデータは月別で複数行になります。) 小計は「顧客毎」に集計。 中計は「顧客種別毎」に集計。 このときに、中計の欄に、顧客種別毎の顧客数の実数(小計の行数)を入れたいのです。 今の私の知恵では、データ行の個数が出てしまい、同一の顧客番号が複数行あると複数でカウントしてしまうのです。 上手く説明できず恐縮ですが、ご教授くださると有り難いです。 よろしくお願いします。

  • エクセルの複数シート集計について

    エクセルの集計について、困っています。 内容は、1枚目のシートに現在庫の集計結果を表示させ、 2枚目には、「出荷数」3枚目には、「入庫数」を入力するだけで、 1枚目に現在庫を表示するには、どのような方法がありますか? 入庫数や出庫数はどんどん増えていきます。 教えてください。よろしくお願いします。 シート1      現在庫  商品A 200  商品B 100  商品C 200 シート2(出庫)       4/5  4/8  4/15  商品A  50   15   20  商品B  20       15  商品C  10   10 シート3(入庫)      4/15  4/8  4/15  商品A  100  200  100  商品B  200      150  商品C  100   100

  • エクセル 集計

    いつもお世話になります。 下記のようなデータがあり、 販売した商品の種類が一番多い担当者コードは何か? また、何種類販売したか? 集計方法を教えていただけないでしょうか。 A列:担当者コード B列:商品コード A     B 101    1004 101    1210 103    1515 103    2798 103    1210 561    3158 561    8741 561    8741 561    3158 ・      ・ ・      ・ 上記の例では、担当者コード103の人が、3種類の商品を販売しており一番多いとなります。 担当者は500名ほど、商品コードは10,000種類ほどあり、 データは15,000行ほどになります。 よろしくお願い致します。

  • 複数のExcelデータの集計

     複数の全く同じ商品の優劣状態を管理しているExcelがあります。  A列には、全く同じ商品名が2行目から300行ほど記載されており、B列からE列までの1行目に、甲・乙・丙・丁とランク名を記載してあります。  それぞれの社員に、その商品の個人主観にて、どこに当てはまるか○を記載してもらってます。  中には、甲と乙の両方など、どっちも判断つかない場合、複数の○が入力されてます(すぐ使えるものとして甲に○をつけたが、販売期限切れが近いので、売るにはちょっと待ったのように丁にも○といったケースもあります)。    これら複数のExcelにおいて、各商品の甲の数、乙の数、丙の数、丁の数がどれだけあるか、集計したいのですが、どのようにすればよいでしょうか?。  手でカウントするには時間がかかるのと、まだ未提出の社員もいるので、都度集計が楽な方法がいいです。

専門家に質問してみよう