• ベストアンサー

エクセルでの条件式等による数値集計

ufuidotcomの回答

  • ベストアンサー
回答No.7

offset関数は、基準に指定したセルから相対位置を行数、列数で指定して該当セル(又は該当セル範囲)を特定するために使います。(Excelのヘルプでキーワード検索でoffsetを参照してみてください。) match関数は、指定したセル範囲から該当する指定データが何番目のセルにあるか検索する関数です。 OFFSET(C2,0,0,0,MATCH(A2,C$1:F$1,0)) ということになので、C2セルを基準にA2に入っている日付に該当するセルをC1~F1で探しています。D1が該当するセルなので2ということになります。 OFFSETの( )の中、前の2つの0はC2からのずれで、行と列(0なのでずれ無し)、3つ目の0は拾う行数、MATCH関数で得られる値は拾う列数ということになります。したがって、C2から2列分のセル=C2:D2という範囲が得られます。 OFFSETの前でSUMしてますので、合計されるということになります。 こんなもんで理解できますか? なお、OFFSETを使ったこの式では、同一商品名・同一売上日が複数(飛び飛びに)出てきた場合には、合計できません。

nao37330
質問者

お礼

ありがとうございます。 大変分かりやすく丁寧にご説明頂き感謝申し上げます。 また、「OFFSETを使ったこの式では、同一商品名・同一売上日が複数(飛び飛びに)出てきた場合には、合計できません。」 こんな事まで分かってしまうのですね…驚きです!! 本当に有難うございました。

関連するQ&A

  • Excelの条件式を教えてください

    Excel2000です。 業務用ソフトからCSV形式でExcelにデータを落として きました。20年近く前のものですが、必要あって 過去の売上データを集計したいのです。 日付別の各支店ごとの売上が集計されています。 A列に年月日(降順)、B列に支店名(10店舗)、 C列に各支店の売上日計です。 A列      B列     C列 2005 01 29 恵比寿支店  1,000,000 2005 01 29 新宿支店   2,000,000 上のようになっていて、支店が10店あるので、 A列の“2005 01 29”という日付は10行あります。 その“2005 01 29”の10店分の売上合計が 出ていないので、それを出したいのです。つまり、 10行目のつぎに自動で1行挿入して、C列に 10店合計売上を表示させたいのです。 DSUMという関数で考えたのですが、うまくいきません。 同一日付が10行あるその最後に1行挿入して、そこに 10店の日計の合計を出したいと考えます。 10数年分の膨大なExcelデータです。 どのような関数で、どのような式を組み立てたら よいのか、教えてください。 よろしくお願いします。

  • エクセルで集計

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

  • 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、元サイズが重複しないように抽出するためには、 どのようにしたらよいのでしょうか?

  • 集計表の作成

    集計表の作成 AccessとExcelを使用して集計Aを作成したいと思っています。 (ボタン1クリックだけで行なうのが理想です) 1.グループ毎に小計行を追加したい(小計行はグループ毎の合計 2.エクスポートしたExcelの最終に合計行の追加したい (合計行は全グループの合計) A列はデータ数によって毎回行数が変わる為にあらかじめレイアウトを 作成して、Vlookuopで当てはめるという事も出来ません。 元となる金額のデータはAccessで作成してExcelにエクスポートする 所までは出来たのですがそれ以降(小計行の追加・計算、合計行の追加・計算)が分かりません。どの様にすればよいでしょうか? Access:仕入先テーブル コード |テキスト型 名称 |テキスト型 仕入額 |数値型 前年比 |数値型 グループ |数値型 Excel:集計A A | B | C | D | E | F | 1 |コード | 名称 |仕入額 |前年比|グループ| 2 |1030 | A | 1,000 | 49%|1 | 3 |1040 | B | 1,050 | 32%|1 | 4 | |小計(A+B) | 2,050 | 81%| 5 |1050 | C | 1,000 | 50%|2 | 6 |1060 | D | 1,050 | 52%|2 | 7 |1070 | E | 1,050 | 49%|2 | 8 | |小計(C+D+E)| 3,100|50.3%| 9 |1080 | F | 1,000 | 60%| | 10|1090 | G | 2,000 | 38%| | 11|2000 | H | 1,000 | 60%| | ・ ・ ・ ・ | |合計 | 9,150 |49% | ・・・C4+C8+C9+合計行の直前まで

  • Excelでの集計その2

    以前、似た質問をしたものです。下記のケース を、Excel(Excel2000)で作れるでしょうか 次のようなデータが10000件ほどあります。 ------------- (A)--------------------------- 行 商品コード 品名 品番  数量   金額 1 10010005   A商品 A-005  5   1000 2 10010006   B商品 B-006  5   1050 3 10010006  B商品 B-006  6   1100 4 10010007   C商品 C-007  10   100 5 10010008   D商品 D-008   6   60 6 10010009   E商品 E-009   3   300 7 10010010   F商品 F-010  7   700 8 10010010   F商品 F-010   3   300 ------------- (B)--------------------------- 行 商品コード 品名 品番  数量   金額 1 10010005   A商品 A-005  5   1000 2 10010006   B商品 B-006  11   2150 3 10010007   C商品 C-007  10   100 4 10010008   D商品 D-008   6   60 5 10010009   E商品 E-009   3   300 6 10010010   F商品 F-010  10   1000 ------------------------------------------------- (A)のような商品コードが一部同じデータを商品コードをキーにして、数量、金額を集計して(B)のようにしたいのですが、Excelでどのようにしたら出来るでしょうか? よろしくお願いします。

  • Kシェル上でフラットファイルの条件付き集計をしたい。

    いつもお世話になっています。Kornシェルで、以下のようなcsv形式のファイルを次の様に集計したいです。 <列A,C,D,E,F,G が全て一致する行毎に列Fの値を集計> (入力) 列A------列B------列C----列D---列E--列F-----列G------列F "10001","0090300", 11110," "," "," "," ",1013134 "10001","0090300", 11130,"0009","888","01","5050455",28428260 "10001","0090300", 11130,"0001","001","01","1111111",258925 "10001","0090300", 11165,"9900","999","09","9999903",0 "10001","0090300", 11110," "," "," "," ",592092 "10001","0090400", 11130,"0009","129","01","1018224",12489867 "10001","0090300", 11130,"0001","001","01","1111111",200000 "10001","0090400", 11165,"9900","999","09","9999904",834592 "10001","0090700", 11110," "," "," "," ",300000 (期待する出力) "10001","0090300", 11110," "," "," "," ",1905226 <--- 1行目, 5行目, 9行目が集計されている "10001","0090300", 11130,"0009","888","01","5050455",28428260 "10001","0090300", 11130,"0001","001","01","1111111",458925 <--- 3行目と7行目が集計されている "10001","0090300", 11165,"9900","999","09","9999903",0 "10001","0090400", 11165,"9900","999","09","9999904",834592 "10001","0090400", 11130,"0009","129","01","1018224",12489867 出力のソートの必要はありません。 これをシェル・スクリプトだけで実装するのは、無理でしょうか。良いアイディアをお願いします。

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

    エクセルでの集計について質問です。 【4月】 (営業A)              (営業B) A     B       C      D       E      F 会社名  品名   売上金額  会社名  品名   売上金額 ○○   ××   ¥10,000   □□   △△   ¥50,000 □□   ■■   ¥30,000   ★★   ○○   ¥20,000 ○○   ☆☆☆  ¥50,000   ○○   ???  ¥30,000 上記のように1枚のシートに営業さんごとに分けて月別の売上表を作っています。 最後のシートに個人ごとの年間売上げ表を作りたいのですが、 【年間合計】      (営業A)   (営業B) A      B      C       会社名  売上金額  売上金額 ○○   ¥60,000  ¥30,000 □□   ¥30,000  ¥50,000 ★★   ¥0     ¥20,000 上記のように会社名ごとに年間合計を作る場合にはどのような方法がありますでしょうか?(年間合計に品名は必要ありません) SUMIFを入力してみたら、ものすごく式が長くなってしまいました… 他に方法がありましたら宜しくお願いします。

  • エクセルの集計方法

    下のようなデーターがあるときのエクセルのうまい集計方法があれば教えてください。 1)データーは4列2000行くらいあります。 2)A列には商品名、B列には売上件数、C列には売上金額、D列には利益が各々記入されています。 3)毎月データーが追加されていくのですが、同じ商品名のデーターもかなり追加されます。 4)同じ商品名のデーターはB列・C列・D列を合計値に置き換えていきたいのです。 5)たとえばA列の商品名・カメラにはB・C・D列とも1月から8月の合計である、12件・12万円・2万円がすでに入力されています。 ここに9月分のデーターとして3件・5万円・1万円が追加されたとき、商品名カメラの行は15件・17万円・3万円に置き換えたいのです。 現在手作業でやっていますが、段々商品が増えてきており、手間がかかるようになっています。 うまい方法があればご教示ください。

  • EXCELの上位3個の数値の集計

    EXCELの集計方法につきまして、ご教授をお願い致します。 EXCELで複数の数値の中で、上位3個の数値の合計を算出する場合。 通常はA列~K列までに数値が入っている場合 =LARGE(A1:K1,1)+LARGE(A1:K1,2)+LARGE(A1:K1,3) のように算出するのが一般的ですが・・・。 B、D、F、H、J列を集計対象から除きたい場合は、どのようになりますでしょうか? すなわち A、C、E、G、I列のみの上位3個の数値合計を算出したいのです。 すみませんが、よろしくお願いいたします。