• 締切済み

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

エクセル関数を教えてください。   A   B   C   D    E   F    G  ・  ・  ・ 1      4月          5月          ・ 2 商品 購入数 販売数 在庫数 購入数 販売数 在庫数 ・ ・  ・ 3 ペン  5   3   2   6   3   3  ・ ・  ・ 上の表でペンの年間販売数を計算したいのですが、SUN(C2,F6,・,・,)は分かります。 指定した条件列(ペン)で、指定した条件行(販売数)を集計するような関数を教えてもほしいのですが、宜しくお願いします。

みんなの回答

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.2

こんばんは! 外しているかもしれませんが・・・ 本来であれば表の構成を変えればもう少し簡単に集計できると思います。 例えば、入力用Sheetの行方向にどんどん入力していけば、別Sheetに抽出する方法はいくらでもあると思います。 しかし、すでに質問どおりの構成で表が出来上がっていると思いますので無理矢理関数を作ってみました。 データは3月まで(AK列)まであるという前提での方法です。 考え方としては条件にあったものを2列おきに合計すればよいということだと思います。 ↓の画像の下側がSheet2になります。 Sheet2のB1・B2に検索条件を入力すればその合計がB3セルに表示できるようにしてみました。 Sheet2のB3セルに =IF(COUNTBLANK(B1:B2)>0,"",SUMPRODUCT((MOD(COLUMN(A1:AJ1),3)=MOD(MATCH(B2,Sheet1!B2:D2,0),3))*(OFFSET(Sheet1!B2:AK2,MATCH(B1,Sheet1!A3:A10,0),,1)))) という数式を入れています。 尚、数式はSheet1の100行目まで別商品が入っても対応できるようにしています。 以上、参考になれば良いのですが 的外れなら読み流してくださいね。m(__)m

  • web2525
  • ベストアンサー率42% (1219/2850)
回答No.1

SUMIF関数 =SUMIF(検索範囲,検索条件,計算範囲) 今回の場合だと合計列が複数あるため、各列の集計を再度合計する必要があります SUBTOTAL関数 =SUBTOTAL(集計方法,計算範囲,計算範囲、・・・・) フィルターオプションで商品名ペンのみを表示することで範囲内の数値を合計できます SUMPRODUCT関数 =SUMPRODUCT(配列) 計算式によっては一致する条件のみを集計することが可能です 今回の場合は =SUMPRODUCT((A2:A12="ペン")*(C2:C12+F2:F12+・・・・)) みたいな感じで

関連するQ&A

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

    エクセル関数を教えてください。   A   B   C   D    E   F    G  ・  ・  ・ 1      4月          5月          ・ 2 商品 購入数 販売数 在庫数 購入数 販売数 在庫数 ・ ・  ・ 3 ペン  5   3   2   6   3   3  ・ ・  ・ 上の表でペンの年間販売数を計算したいのですが、SUN(C2,F6,・,・,)は分かります。 指定した条件列(ペン)で、指定した条件行(販売数)を集計するような関数を教えてもほしいのですが、宜しくお願いします。

  • EXCEL 関数 条件に当てはまる行数を求める

    1行の中の、複数の列の値に条件をつけ、それに当てはまる行数を関数で求めたいのですが、どうやれば良いのでしょうか? 行数を求めるのはおそらくROWS?だと思うんですが、その行の中の複数の列の条件をどのように指定すれば良いのか分からずに困っております。 (例) 列Cに文字列"青"、列Fに数値"5"が両方満たす行がいくつあるかを、どこかのセルに関数で求める。 よろしくおねがいいたします。

  • エクセル関数について

    質問です。下記のようなデータ管理をしているものがあり 集計を出したいのですが、うまくいきません。 1行目 A列   B列  C列 2行目 商品ID  商品名 商品名2 3行目 111   りんご   4行目 222   みかん  愛媛 5行目      すいか   6行目 222   みかん 7行目 444   いちご  熊本 8行目 空白予備列 9行目 空白予備列 10行目 空白予備列 条件:C列商品名2が入っていないもので A列商品IDが入っているものだけの数もしくはA列商品IDが入っていないものの数をカウントしたいのですが全セルを指定すると、空白予備列の空白までカウントされてしまいます。なので、条件としてはB列商品名が入っていてA列商品IDが入っているものだけの数もしくはA列商品IDが入っていないものの数をカウントしたいのですが、 何か良い方法はありますか? 色々やってみたんですがなかなかうまくいきません。 空白予備列を作っているのは今後どんどん増えていくので その為にいちいち範囲指定を行うのは面倒なので、 上記で出来る方法があればその方法でやりたいです。 どうか御願いします。

  • エクセル関数で、ご教示下さい

    例として、セルA1~A10に、1.2.3.・・・・10と番号を入れて       セルB1~B10には、商品の在庫数が入力されているとします。 この時、セルC1に集計の開始番号 セルC2に集計の終了番号を入力すれば、      D1に開始番号から終了番号までのB列の合計を表示させたいのですが、      このような集計ができるD1に入れる関数はあるでしょうか。 例えば、B列の3行目から6行目までの合計をD1に表示させたい場合に      C1にA列番号の3を入力、C2には6を入力すれば、D1にB3からB6の合計を      表示してくれる、といった関数です。      開始番号、終了番号は、何番~何番までと、その都度変わります。 どなたか、よろしく、お願いいたします。         

  • EXCELの集計で悩んでいます

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

  • [関数] 集計用の関数について

    こちらの識者の方々にはいつもお世話になっています。 関数の質問です。 環境は下記になります。 OS=windows7 pro 64bit Office=Excel2010(14.0.7128.5000) ■やりたいこと 図のような元リスト(A1:F13)があり、それを人ごとのリスト(H1:L13)で集計したい。 I2:L13に関数を入力し集計したいのですが、どのような関数を入れればいいか教えていただきたい。 ■定義と条件 ・A列の日付とB列の項目を結合した値はユニークです(5月1日のりんごは1行しかないことは担保されています) ・同様にC1:F1の値もユニークです ・元リストの条件指定の引数で(C2:C13)は使いたくない  (人ごとにシートがあるので、H1の値によって取得する値を変えたい) このような場合どのような関数を使えばよいでしょうか? 質問に不備不足等ございましたらご指摘ください。 ご面倒お掛けしますがよろしくお願いします。

  • エクセルの関数で

    また皆様のお知恵を拝借したく 先週に数値の大きい順番に項目を並べたいという質問をさせていただきましたが、そこに条件を付け足して、同じように求めたいのです。 シート1には A列     B列      C列 1801  りんご    500 1801  みかん    350 1801  なし     700      ・      ・ 1802  みかん    250 1802  ぶどう    600 ・ ・ 1812  かき     1000 B列、C列は以下に項目と数字が並んでいきます。 A列は年月が入ります。 月の入力は毎月20項目程度になります。 そしてシート2のD列1行目から5行目に1801における上位金額の5項目         E列1行目から5行目に1802における上位金額の5項目               ・               ・             O列1行目から5行目に1812における上位5項目 というように取り込みたいのです。 集計シートに関数を入れて自動的に上位項目を表示させるにはどのような関 数を使えばよろしいのでしょうか。 入力されていない場合は表示はしないような形で行いたいのです。 よろしくお願いします。

  • Excelの関数式を教えてください。

    下記の場合、空欄セルにどのようなExcel関数式を入力すれば良いか教えてください。 また、その式の考え方(読み取り方)も解説していただけると助かります。      A        B        C     D     E      F   最小発注数 まるめ発注数 現在在庫 使用数 発注数 設定在庫 1   1000       100      1500   1200         1500 目的:E列の発注数を決定したい 条件:(1)設定在庫を満たすようにしたい     (2)最初は最小発注数で注文し、それでも設定在庫に      満たない場合は、まるめ発注数の倍数で発注する     (3)設定在庫以上の場合は、注文数は0 今回の例では、2月使用後の在庫が1500-1200=300になるので 1000+100×2=1200を注文したい。 CEILING関数を使うと考えますが、どのように表現するかわかりません。 

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

    エクセル の配列関数のSUMPRODUCT使用して このような式を書いた場合 SUMPRODUCT((条件1)*(条件2)*・・・(条件n)*(集計範囲)) =SUMPRODUCT((A1:A30=50)*(B1:B30=750)*(C1:C30=6600)*(D1:D30=210)*F1:F30) 集計範囲の行 いわゆるFの行の数字の中の一つのセルに 「3」などのカッコを使用した ものをいれると "#VALUE!" と表示され正しい答えが出ないのですが 解決方法を教えてください。 よろしくお願いします。

  • エクセルで以下の件を教えてください!

    添付の写真のように、A~F列のデータを、H~K列で集計しています。(利益率は集計してませんが。。。) この集計にさらに『在庫金額合計』の項目を、L列に作成したいと考えています。 購入はしたが、販売はできていないという、在庫の集計をしたいのです。 この表で言うと、B3とB5とB9の購入金額合計を、それぞれ月別(購入月別)に自動で計算できるようにしたいです。 販売日以降の列が空欄の場合は、プラスして計算するみたいな関数は、どう作ればよいでしょうか? 参考までにI~K列の関数は、以下のような感じです。 I2セル:=SUMIFS(B:B,A:A,">="&H2,A:A,"<"&EDATE(H2,1)) J2セル:=SUMIFS(D:D,C:C,">="&H2,C:C,"<"&EDATE(H2,1)) K2セル:=SUMIFS(E:E,C:C,">="&H2,C:C,"<"&EDATE(H2,1)) なるべく同じような関数を使って表を作成したいです。(分かりやすいとの理由からですので、絶対という訳ではなく、別の方法でもかまいません!) ご教授ください。宜しくお願い致します。