• 締切済み

【Excel】この関数式の読み方を教えてください

=IF(COUNT(B1:C1)=0,"",SUM(B$2:B2)-SUM(C$2:C2)) という式です。関数についてはまったくの無知ですが少し調べました。 =IF(COUNT(B1:C1)=0 まではCOUNT 関数ですよね。この関数は指定した範囲内に入力されているセルの数を数えるということですが、なぜ=0なのでしょうか。 また$は参照先を固定するという意味だそうですが、 "",SUM(B$2:B2)-SUM(C$2:C2)) はどう読むのでしょうか? 関数や数式にまったく無知なのでご丁寧なご教示お願いします。 Excel2007利用です。

  • frau
  • お礼率54% (2370/4367)

みんなの回答

  • Kaneyan-R
  • ベストアンサー率42% (1242/2890)
回答No.4

〉絶対参照先をもとに、なぜ加算もされているのか?という疑問です。 絶対値なのは、B$2とB$Cだけですから、コピーすると他のセル参照は変化します。 既に他の方の回答にあるように、一つ下にコピーすれば SUM(B$2:B3)-SUM(C$2:C3) となり、(B2+B3)-(C2+C3)を計算する事になります。 SUM関数は指定した範囲を合計する関数です。

  • msMike
  • ベストアンサー率20% (363/1772)
回答No.3

》 "",SUM(B$2:B2)-SUM(C$2:C2)) 》 はどう読むのでしょうか? ダブル・クウォテーションふたつ カンマ サム かっこ ビー ドル に コロン に かっこ閉じ マイナス サム かっこ シー ドル に コロン シー に かっこ閉じ かっこ閉じ

  • Kaneyan-R
  • ベストアンサー率42% (1242/2890)
回答No.2

>=IF(COUNT(B1:C1)=0,"",SUM(B$2:B2)-SUM(C$2:C2)) これ、複数の列や行に同じ関数入っているでしょ? 掲示の関数が入っているセルのみでいうなら 「もし、B1:C1の範囲に入力されたセルがないなら、空欄にする。入力されたセルがあるなら、B2:B2の合計からC2:C2の合計を引け」 となる。 IF関数の条件式にCOUNT関数使って、真の場合は空文字("")、偽の場合はSUM関数で計算した値を入れていると云うことです。 コピーした際の挙動は既に回答があるので省略します。

frau
質問者

お礼

補足のいい方について訂正です。 >加算についてはこの関数式では計算されていません。 この関数式ではB2からC2を減算するという式しかみあたらないのに、絶対参照先をもとに、なぜ加算もされているのか?という疑問です。

frau
質問者

補足

ご回答ありがとうございます。 絶対参照なのでD2の計算結果に対しては、B2、C2の差額が加算されたものがそれ以降の残高(D2)となりますが、加算についてはこの関数式では計算されていません。この式のなかではどう命令されているのでしょうか?

  • maiko0333
  • ベストアンサー率19% (840/4403)
回答No.1

=IF(COUNT(B1:C1)=0 指定した範囲内に入力されているセルの数を数えるということで <範囲に何も入力されていなければ0になる> SUM(B$2:B2)-SUM(C$2:C2)) これは SUM(B2:B2)-SUM(C2:C2)) と同じ意味ですが、 これを1つ下のセルにコピーしたら SUM(B2:B3)-SUM(C2:C3)) になります。順に SUM(B2:B4)-SUM(C2:C4)) SUM(B2:B5)-SUM(C2:C5))  と変遷します。

関連するQ&A

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

    こんばんは、COUNT関数についてお伺いします。 たとえばA列に関数(SUMなど)の数式が入っています。そのA列を範囲指定してCOUNT関数をしたところ、数値が現れているセルのみをカウントしたいのですが、空白の数式が入っているセルもカウントしてしまいます。数値を示しているセルのみをカウントしたいのですが、うまく行きません。 どうすれば解決できますか、教えていただけないでしょうか。

  • Excel2003でif関数を使うとSUM関数で反映されません

    A1セルに金額を入力すると、B1に1と表示させる為に=IF(A1,"1","")といった数式を入れております。 さらにC1にBセルの合計値を表示させる為に=SUM(B1)C2には=SUM(B1:B2)と入力しているのですが、B列のセルにIF関数を使った数字『1』が表示されてもC列セルに反映されないので困っています。 ここで質問ですが、A列セルに金額が入力されるとB列セルに数字『1』が表示され、更にC列セルにB列セルの合計値が表示される様な関数等はありますでしょうか?解り難い説明ですいません。 因みにA、B、C列共に1~31までのセルがあります。

  • Excel関数で 空白値の入力はどう書くの?

    あるセル(B1とします)に =if(A1="a",0,"") とif関数を書きました。 別のセルA2にセルB1を合計するような式( =B1+C1 )と書くと#VALUE! というエラーになります。 多分、B1の値 "" が空白ではなく文字列と認識されているからだと思いますが、""の代わりに空白値をif分の中に指定することはできないのでしょうか? 逃げ手として、A2に書く式を =sum(B1:B1)+sum(C1:C1)とする手はありかと思いますが、できたら空白値を代入したいです。

  • 関数式の意味

    エクセルで関数を使った、数式がありますが、関数の中に関数を入れたりして、長い数式になると、その数式の意味がわかりにくくなってきてしまいます。 どこから、順番に読み始めればいいのか、分からない時がりますが、なにかコツのようなものはないでしょうか? 例えばこのような =(MIN(B2,"9:45")-MAX("8:00",A2)) +MIN(MAX(B2,"10:00"),"12:00")-"10:00" +MIN(MAX(B2,"12:45"),"17:45")-"12:45" =IF(and(IV$2<=A2,A2<=IV$3),IV$3,IF(and(IV$4<=A2,A2<=IV$5),IV$5,A2)) 宜しくお願いします

  • EXCEL2007での関数について

    すみません、関数について教えてください。 図のように、セルC(=B*0.9)からセルE(=D*0.9)の値を引いてセルFに数字を出したいのですが、 セルCが空白の場合は、セルBの数字を参照してセルFに数字を出すとゆう関数ってありますか? IF関数の勉強不足により、それが可能かどうかがわかりません。 補足:『通常は、セルC-セルE=セルF、でも、セルCが空白の場合は、セルB-セルE=セルF』といった感じの関数があれば教えてくださいm(_ _)m

  • EXCEL関数について

    EXCELの関数「IF」において、 =IF(Aのとき、BもしてCもする、それ以外は何もしない) という関数にしたいのですが、 「BもしてCもする」とする場合、どのような数式を かけばよいのでしょうか。

  • Excelで関数の参照先をセルの値で指定するには?

    Excel2000を使用しています。 関数が参照するセルを指定する場合、例えばSUM、のとき。 セルA1には"B1"と入力されており、 同様にセルA2には"B5"が入力されていたとして(もちろん " は実際には入力されてません)、 この セルA1 と A2 のテキストデータを参照して、SUM(B1:B5) を得るにはどのように範囲を指定したらよいのでしょうか? 別にセルA1 と A2 が "B1" 及び "B5" でなくてそれに代わるものでも構いません。 要は関数が参照するセルをほかのセルの値で指定したいのですが。

  • Excel関数コピーについて

    Excel関数を横にコピーした時に、 その前の関数の次の列から計算式を作成したいのですが可能でしょうか? D1セルには、=SUM(J2:L2)が入ります。 (B1の関数であれば、A1がC2まで計算しているのでD2からはじまります) A1セル B1セル C1セル     ・・・ =SUM(A2:C2) =SUM(D2:F2)  =SUM(G2:I2)  ・・・ 教えてください。

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

    エクセルの関数。 Sheet1の作業列1のA2セルに =IF(COUNTA(Sheet2!2:2)=0,"",IF(Sheet2!A2="",A1,Sheet2!A2)) →数式1とする 作業列2のB2セルに =IF(A2=$D$2,ROW(),"") →数式2とする という数式を入れA2・B2セルを範囲指定 → B2セルのフィルハンドルで下へコピーしておきます。 (Sheet2の行数以上コピーしておく) そしてE2セルに =IF(COUNT($B:$B)<ROW(A1),"",INDEX(Sheet2!B:B,SMALL($B:$B,ROW(A1)))&"") →数式3とする という数式を入れオートフィルで列方向・行方向にコピーする。 教えて頂きたいことは、数式1、数式2、数式3が何を意味しているのか。 と、この数式を使って、表を作成したのですが、ある特定の数字(コード、D2セルに入力)を入力しても反応してくれない。 (E2~H2まで、空白セルの状態になります。) (sheet2は約1200行あります。) 教えて頂けないでしょうか?

  • エクセル関数式で範囲指定をまとめて変化させる方法。

     初めまして、よろしくお願いします。  式は違いますが、範囲は同じ関数式がかなりあるのですが、すべて範囲を手入力することはかなり骨が折れます。そこで指定セルに範囲の数字を入力すれば範囲が変化するような関数式の書き方がありましたら、よろしくお願いします。 例) =COUNT(H1:H15) =SUM(H1:H15)    :    :    ;  というモノをA1に1、もしくはH1、B1に1もしくはH15と入力すれば、シート内の任意の関数式総て(H1:H15)で範囲指定され、計算されるようにできると言う関数式の書き方です。

専門家に質問してみよう