エクセルのデータ合計方法と条件式について

このQ&Aのポイント
  • エクセルで複数のデータを条件付きで合計する方法について質問があります。シート1にあるデータのうち、特定の2つのセルのデータの合計を求める方法と、片方のセルが空白の場合にもう一方のセルのデータを表示する方法について教えてください。
  • また、シート1での月の数が増えていく場合でも正しく計算できる関数や方法があるかもしれませんが、どのような方法が最適なのかも教えていただきたいです。
  • INDIRECTやADDRRESS、SUMやCOUNTAなどの関数を使用する必要があるのか、それとも他の方法があるのか知りたいです。
回答を見る
  • ベストアンサー

エクセル

エクセルについての質問なんですが、 下記のシート1があるとして、   A  B  C 1 1月 2月 3月 2 150 123 111 これを、下記別シート2の   A  B  1 1月 2月  A1に入力された月とB1に入力された月の すべての合計をとりたいんです。 また、B1に入力がなければA1だけを表示させたいんです。 つまり、A1が「2月」、B1が「3月」なら【234】。     A1が「1月」、B1が「3月」なら【384】     A1が「2月」、B1が空白なら  【123】 問題なのは、シート1で月が増えていくこと。 上記は3月までですが、4月、5月、と増えていきます。 何かいい関数や方法はないでしょうか? INDIRECTやADDRRESS、SUMやCOUNTAも使わないとだめですか? よろしくお願いします。

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

  • ベストアンサー
  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.2

次の数式は如何でしょう。 =SUM(OFFSET(Sheet1!$A$2,0,MATCH(A1,Sheet1!1:1,0)-1,1,IF(B1<>"",MATCH(B1,Sheet1!1:1,0),MATCH(A1,Sheet1!1:1,0))-MATCH(A1,Sheet1!1:1,0)+1)) 因みにA1が空白、A1<B1は考慮していません。

hake-n
質問者

お礼

ありがとうございます!できました! なぜか、A1>B1でもOKでした!!

hake-n
質問者

補足

B1、A1、$A$2はどちらのシートのですか? むううう・・・。 それと、 Sheet1!1:1 の部分は正しい表記でしょうか? すんません・・・。素人なもんで・・・。

その他の回答 (2)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.3

NO2です。 回答の一部に誤植がありますので以下の通り訂正します。 因みにA1が空白、A1>B1は考慮していません。

hake-n
質問者

補足

あのー・・・。すいません・・・。 考慮した場合はどーなるのでしょうか? 「空白の場合」はいいのですが、 「A1>B1」は発生してしまいますので・・・。

noname#60420
noname#60420
回答No.1

配列数式を使えばよいと思います。 以下の式をコピーして、合計を出したいセルにペーストし、「ctrl」+「Shift」を押しながら「Enter」キーを叩けば、 式全体を{ }で囲まれた状態(配列数式)になると思います。 =SUM(IF((A$1=Sheet1!$A$1:$L$1),Sheet1!$A$2:$L$2))+SUM(IF((B$1=Sheet1!$A$1:$L$1),Sheet1!$A$2:$L$2)) ※上記の式ではシート1のシート名を「Sheet1」としています。 シート名はお使いのシートと同じものをお使いください。

hake-n
質問者

補足

配列数式自体があまりよくわからないのですが、 この関数の、 A$1、B$1、$A$1、$L$1、$A$2、$L$2はどちらのシートのですか?

関連するQ&A

  • EXCELで関数のセル指定を数値に変換

    エクセル2003を利用していて、 A1に 1 B2に =3 C3は空白 D4に =2+5 とそれぞれ入力 =SUM(A1,B2,C3,D4) となっているとき SUM関数のなかみを =SUM(1,3,0,2+5) と置き換える方法はありませんか? (置換する必要のある関数は1シートの中にたくさんあるので1つ1つF9するのは厳しいです) マクロで何とかならないかと考えているのですが、ほかの方法でも構いません。 元データは削除しつつ合計結果の内訳を簡単に見られるようにする必要があるため このような手段を講じようとしています。 宜しくお願いします。

  • エクセル2003 計算されないようにしたい

    例 A列     B列  1     =A1+A2  2     =A2+A3  3     =A3+A4 (A4は空白です) となっている場合に B1=3 B2=5 B3=3 になると思うんですが この時に空白のセルと計算結果を出すときは0もしくは 計算されないようにしたいです。 最終的にB列にSUM関数を使って合計を出したいのですが A列に求めたい数字が片方しか入ってない場合 (数字が入っているセル+空白セル)はSUM関数の合計に入れたくないです。 なので上記の例では B列にSUM関数をした場合11ではなく8にしたいです。 それには文字列を入力して#VALUE!にするしかないですか? でもその状態にしてSUM関数で合計を出したときも#VALUE!になってしまいます。 よろしくお願いします。

  • 宜しくお願いいたします

    宜しくお願いいたします Excel2007を使用していますが関数での質問です 図の様にIFを使いB3に0を入力しないでSUMで計算しようと思いますが C3に関数で =IF(B3="","",SUM(C2+A3-B3))として有りますが 図1の様にB3に0を入れるとC3に合計が表示されますが 図2の様に =IF(B7="","",SUM(C6+A7-B7))として有りますが B7に0を記入しないとC7が計算できずに空白となりますが IF(B7="","",ではB7が空白の場合は空白となるのですが、空白ですので SUMの計算が出来ないということでしょうか、0を入れないでも計算できる 関数は有るでしょうか(0は入れたくない)

  • エクセルでおしえてください

    シート1のA1~A3の合計を、B1にSUM関数で計算させてます。シート2のB1にシート1のB1に関数が入力されていれば1、関数以外の文字や数字が直接入力されている時には0を表示させるにはどうすればいいのでしょうか?。

  • エクセル初心者です。教えてください。

    わかりやすく説明できるよう努力しますが、わかりづらかったらすいません。 エクセルですが、たとえばA1とB1の合計をC1に入れるとします。 これはSUMで合計をだしているのですが、A1とB1になにも数値がはいらなかったときに C1に0ではなく、空白を返すようにするにはどうすればよいでしょうか? わかりづらかったらすいません。よろしくお願いいたします。

  • エクセルの計算式を教えてください

    会社でエクセルを表を作っているのですが、計算式が分かりません。 A B C D 1  ○月 2  4月  5月   6月  …  当月迄累計  当年度累計 3  1,000 1,500 2,000 … 上記のような表があり、実際は4月から3月まであります。 当年度累計は、4月から3月をSUM関数を使用すればいいんですが、 当月迄累計は一番上の○月を入力することによって、○月までの合計が計算されるようにしたいのです。 IF関数を使用してif($A$1=$A$2,A3,if($A$1=$B$2,SUM(A3:A4),if… と12月まで入力したんですが関数は同時に12こ使えないらしく、どうしても式を認識してくれません。 どのような計算式を入力したらいいでしょうか? 教えてください。

  • エクセルで

    エクセルについてお伺いします。例えばセルA1に10%、A2に20%のパーセンテージで入力された値は合計は出せないのでしょうか。SUM関数で出すとエラーが出てしまいます。それと、数式を入力したセルの数値の値の合計も出ないのでしょうか。例えばあるセルに=A1+B1,もう一方のセルにA2+B2と入力されていてそれぞれ数値が5と4とします。合計9を出したいのですが、数式のためSUM関数では合計できません。何か方法はありますか。

  • エクセルの関数

    エクセル2000で足し算の合計はSUM関数ですが、引き算の合計の関数や、掛け算の合計の関数はないですか?例えば、「=A1-B1-C1-D1」「=A1*B1*C1*D1」などです。教えてください。

  • Excelの関数について

    Excelの関数について教えてください。 C1に50、D1に30、E1に=SUM(A1:D1)、B2に=E1-SUM(A1:B1)、が入力されています。 このB2の計算式を、「もしB1:C1のどちらか片方(もしくは両方)に値が入力されているときはB2の計算式の結果が返ってくる。B1:C1のどちらも空欄のときは「#N/A」が返ってくる。0は入力有りとみなす」というようにしたいです。 IF関数にISBLANK関数を入れてみたんですが、片方に入力有りでも「#N/A」が返ってきてしまいます。 =IF(ISBLANK(B1:C1),NA(),E1-SUM(A1:B1)) ISBLANK関数じゃダメだったんでしょうか? どういうふうに変えればいいんでしょうか? すみませんがどなたか教えてください。

  • これってエクセルでできますか?

    毎日の勤務時間の表を作るのですが、この表で関数を入れるとなると、どういう式になるのかわかりません。 例えば、2月1日は この数字を入れました。 A1-5 B1-3 C1-3 D1の合計はSUM関数を使って11(時間)。2月2日は A1-1 B1-2 C1-4 と2月1日の入力した数字を消して2日の分を入力。D1の合計は7(時間)。A5のところに累計時間この場合11+7で18になるようにしたいのですがそれができるか教えてください。

専門家に質問してみよう