• ベストアンサー

エクセル関数で質問です。

関数初心者です。 教えて下さい。 下の図の1月の合計部分にそれぞれ場所の記号の個数と台数が合計されるようにSUMIF関数で 個数と売上が出るようにしたのですがそれを2月にコピー(右下に出る+を横にスライドするやり方で) しても1月の関数がそのままコピーされてしまい2月の合計が出ません。 $を入れてみたりしたのですがどうしても出来ません。 説明が下手で申し訳ないです。 宜しくお願い致します。

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

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

回答No2です。 実際には合計した値は400行から402行に表示されることになるのでしょう。 C400に入力する式は次のようにして右横方向にドラッグコピーしたのちに下方にもドラッグコピーします。 =IF(OR(C$6="",$B400=""),"",SUMIF($B$7:$B$399,$B400,C$7:C$399)) 入力する式の中でセル番号に$を付けない場合には式を別のセルにドラッグコピーすれば自動的に変わります。 式を横方向にドラッグコピーすればセル番地のローマ字の部分が変化して数値の部分は変わりません。 式をたて方向にドラッグコピーすればセル番地のローマ字の部分は変化しませんが数値の部分が変わります。 したがって式を横方向にドラッグコピーするだけでなく縦方向にもドラッグコピーする今回の場合には$をセル番地のローマ字の前につけるのか数値の前につけるのか、それとも両者につけるのかを十分に検討することが必要です。 上の式でC$6は右方向にコピーすればD$6、E$6・・・のように変わりますが下方にドラッグした場合には数値の部分は変わりません。したがって常に表の内の6行目のセルを見ていることになります。6行目のセルが空白であれば答えとなるセルは空白にしなさいということです。 $B400については式がコピーされることがっても常にB列の値を行の変化に応じてみていなさいということで、○、△、×を見ていることになります。 SUMIF関数ではB7からB399のセル範囲は式が横方向や下方にドラッグコピーされても変化しないようにセル番地のローマ字と数値の前に$を付けています。一方C7セルからC399のセルの範囲については式を右横にドラッグコピーすればD7:D399のように変わりますが下方にドラッグコピーした場合にはC8:C400のように変わっていきます。列番号は変わってもよいのですが行番号は変わってほしくありませんので、C$7:C$399のようにしているのです。

purikopuriko
質問者

お礼

出来ました!!!ありがとうございます^^む…難しい関数ですね…2つの関数を使用してるんですか??IF(OR…うーーーん…。パソコンで調べてもっと勉強します。本当初心者です。

その他の回答 (2)

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

C列やD列にはどんな式が入力されているのですか?それを具台的に示していただけませんか?

purikopuriko
質問者

お礼

解決しました^^ありがとうございました^^

purikopuriko
質問者

補足

入っている関数は=SUMIF(B7:B399,"○",C7:C399)です。 この関数ではダメなのでしょうか…

  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.1

C22に =SUMIF($B$7:$B$21,$B22,C$7:C$21) と記入,右に下にオートフィルドラッグコピーします。 $がどこに付いててどこに付いてないのか,全てに意味があるのでよく見てマスターして下さい。

purikopuriko
質問者

お礼

ありがとうございます^^みなさんこうゆう関数はどこで学んだのでしょうか。本を読んでも実際に試してもやはりわかりません。本当エクセルって色々な事があり難しいですね。

関連するQ&A

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

    エクセルの関数について困っています。 現在で仕事で下記のような表を作成しています。 日付 品名  区分 個数  価格  合計 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関数を重ねて書かないとダメかな?と思っているんですが、どのような数式になるかわかりません。 区分分けしてかつ日付分けして集計したいのです。 この表を例にとって数式を教えていただけると助かります。 どうかよろしくお願い致します。

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

    エクセルの関数について教えてください。 条件を満たした数を合計させる関数を教えてください。 たとえば果物屋さんで下記のような売上個数の表があったとします。        A       B     C     D 01行  4月01日  青森産  りんご   1個 02行  4月01日  秋田産  りんご   5個 03行  4月01日  新潟産  りんご   4個 04行  4月01日  青森産  みかん   3個 05行  4月01日  秋田産  レモン   4個 06行  4月01日  青森産  レモン   2個 07行  4月02日  青森産  レモン   1個 08行  4月02日  青森産  みかん   8個 09行  4月02日  秋田産  みかん   7個 10行  4月02日  秋田産  りんご   3個       ・       ・       ・       ・ 31行  4月31日  秋田産  りんご   2個 といった一ヶ月の売り上げ個数リストがあったとして 教えてほしい関数は、上記の中から ”青森産” の ”りんご” が 1日~31日 の間に 売れた数の合計を求める関数が知りたいのですがそんな関数はありますか? =SUMIF(C1:C31,"りんご",D1:D31)として『りんご』のみの合計の出し方はわかるのですが 『りんご』に『青森産』などといった複数の条件をつけた際の合計の方法がわかりません。 また、フィルター機能で青森産、りんごと絞り込んだ後での合計ではなく あくまで、関数で求める方法を教えていただけませんでしょうか?

  • 指定した期間内での数値を合計する関数。

    関数について教えて下さい。 SUMIF関数で条件に合うセル内の数値を合計するのは出来るのですが その条件に更に条件を加えたいのですがやり方がわかりません。 下記の画像でD28セルに8/1~8/3までの間の海山商事さんの個数を 合計して表示させるにはどんな関数が入るでしょうか? SUMIF関数で全期間の海山商事さんの個数を合計する事はできますが 期間を指定する関数がどうしてもわかりません。 初歩的な質問かもしれませんがよろしくお願いします。

  • 関数を教えて下さい(2)

    昨夜の質問に追加して質問させて下さい。 添付画像の赤枠欄にそれぞれの日別の合計数(台数、時間)を出したいです。 昨夜の質問で、SUMIFを使用すれば日別の合計台数が出せることは分かりましたが、 合計時間を出すことが出来ません。 合計時間は、関数の組み合わせで出すしかないのでしょうか? 関数に詳しい方、どうかよろしくお願い致します。 昨夜の質問 http://okwave.jp/qa/q8508450.html

  • エクセルの関数についての質問です。

    エクセルの関数についての質問です。 画像のように横に1、2、3…(100くらいまで続きます)縦にA、B、Cの行があります(端が切れちゃってますが、A2にA、A3にB、A4にCです) B2から横の列にはそれぞれ☆や○等いろいろな記号が入ります。 そしてこの記号には特定の値が決められています。☆=10、○=5、△=3 B3から横には、B2の記号にそった数字が入ります。(10やら5等) そこまではIF関数で式を作ったのですが、ここからが問題でして… B2から横に1から100まで、記号(B3から横に数字)を入力していった時のB3列の合計が仮に212とします。 合計した値が200を越えてしまった場合、B4からの列に数字を入力するようにしたいのです。 (200ギリギリ前くらいまではB3の列で、それを越える時からB4の列に入力します。その際、B3列に入る数字は消えます) なおかつ可能であれば、このB4からの列に入るのはランダムにできるといいのですが…(画像では○の数字を下ろしていますが、☆の数字をおろしても良いし、△の数字をおろしても良い) ●計算式によって入力された数字(B3列)を特定の数字を越えた場合、別の枠(B4列)に移す関数はありますでしょうか?? ●また、それをランダム(関数)で選ぶことは可能でしょうか?? よろしくお願いします。

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

    購入品関係の年間集計金額表を作っています。 初心者ですので専門的言葉がわからないので説明下手になると思います。 すみません・・・ 毎月ごとにシートが別になっていてそのシート4月~3月までのデータが会社の専用ソフトで 勝手に品名、金額、購入者などを織り込んだ表が自動作成されるのですが、 これを一括りにまとめたシートを作成しています。 やっと関数が出来たのですが隣のセルにコピーすると月も(シート名)次の月に変えることは出来ないでしょうか? 文章だと説明出来ないので実際使ってる関数を出します。 例: =SUMIF('4月'!$D:$D,"*電池*",'4月'!$E:$E)) この関数がB1にあってC1、D1・・・にコピーさせると5月、6月・・・にしたいというものです。 「電池」となってる条件はB2、B3・・・と長々30種目ほどあって、月を1つづつ変えるのは 気が遠くなってしまいます。 あと、 =SUMIF('4月'!$D:$D,"*電池*",'4月'!$E:$E)) この関数を↓方向にコピーさせると合計範囲の「E:E」がF:F、G:G・・となるように出来る方法も 知りたいです。 どなたか詳しい方よろしくお願い致します。

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

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

  • ACCESSで、EXCELのような、sumif関数のような関数ってありますか?

    ACCESSで、EXCELのような、sumif関数のような関数っ てあるのでしょうか? 現在サブフォームの中で、メインフォームで抽出した ものを表示させているのですが、 サブフォームの[土日]フィールドに[●]印のつけられ た部分の[売上]フィールドの売上合計を出したいと思うのです。 dsum関数を使うと、メインフォームで抽出されていな いすべでのデータを足しているようなので、なにか方 法があれば教えていただきたく思います。 どうぞよろしくお願いいたします。

  • 関数式を教えて

    エクセルで、商品の注文集計を作成しています。 表が大きくなるので、添付図のように、注文個数を入力するだけで縦横の合計をしたいのですが、 個数のセルに、注文数のみで注文合計を表示せずに横TOTを表示したいのですが、どのような関数を使えばよいのか教えてください。 添付図は、ここの注文合計を別の列を作成して、非表示設定にしてTOTしています。

  • エクセルの関数 2

    エクセルの関数についての質問です。 以前、同じ質問をさせてもらったのですが、うまくできなかったので、より細かく、質問させて頂きたいと思います。 シート1(売上)日付・金額 シート2(月報)日付・金額 シート1(売上)から日付と金額を拾い出して、シート2(月報)に集計したいのですが、シート1(売上)では日付が同じときもあり、シート2(月報)では金額も合計しなくてはいけないのです。もし、ご存知の方がいらっしゃいましたら教えてください。 こんな感じです。 シート1(売上) 会社名    日付   金額   会社名   日付   金額  A社    2月2日  20000   G社   2月2日  20000  B社   2月4日  25000   H社   2月6日  15000  C社   2月5日  20000    I社   3月1日  10000  D社   2月4日  18000   J社   3月15日  23000  E社   2月7日  20000    K社    2月4日  40000  F社   2月10日  23000   L社   3月25日   13000 シート2(月報) 日付   金額 2月1日  ここに関数   (シート1で日付が2/1の時は、それぞれの金額を合計し、集計する。) 2月2日  ここに関数    ↑↑↑ 2月3日  ここに関数   と言うような式を入れれば出きるかと 2月4日  ここに関数   思っています。 2月5日  ここに関数 2月6日  ここに関数 2月7日  ここに関数  ・     ・  ・     ・  ・     ・ 伝わりましたでしょうか? どんな、式を入れたらよいか教えてください。 以前はSUMIFを使えばと、教えて頂いたのですが、知識不足でうまくできませんでしたので、再度、質問をさせて頂きました。 よろしくお願い致します。

専門家に質問してみよう