エクセル2007 シートA、B、Cの計算式の修正方法

このQ&Aのポイント
  • エクセル2007のシートCで数式にエラーが表示される問題を解決する方法について説明します。
  • シートCセルa3,a4,a5,a6に数値が入っていない場合、エラー表示ではなく空欄にするための方法をご紹介します。
  • また、シートCセルa7にはa1とa2の合計を表示する方法についても説明します。
回答を見る
  • ベストアンサー

エクセル2007

シートA、B、Cを使用しています。 シートCセルa1に、=if(B!a1="","",B!a1-A!a1)と入力しました。 シートCセルa2,a3,a4,a5,a6にも同様の式{a2には、=if(B!a2="","",B!a2-A!a2)}を入力しました。 シートCセルa7に(a1+a2+a3+a4+a5+a6)の式を入力しました。 シートBセルa3,a4,a5,a6に数値が入っていないので、シートCセルa3,a4,a5,a6とa7がエラー表示されています。 【質問】 ・シートCセルa3,a4,a5,a6をエラー表示ではなく空欄にして、a7にはa1とa2の合計を表示したい場合はどうすればよいでしょうか?

  • suu3
  • お礼率27% (33/122)

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

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

一例です。 CシートのA1は=IF(COUNT(B!A1)=0,"",B!a1-A!a1)として下方向にコピー CシートのA7は=SUM(A1:A6)として下さい。 SUM関数は文字列を計数対象外とします。

その他の回答 (2)

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.3

 CシートのA1セルに入力する関数は、A!A1セルとB!A1セルの2つのセルの内、どちらか一方でも数値ではないデータが入力されていた場合には、空欄を表示させる様にしなければなりません。  ですから、CシートのA1セルに入力する関数は =IF(AND(ISNUMBER(A!A1),ISNUMBER(B!A1)),B!A1-A!A1,"") か、或いは =IF(COUNT(A!A1,B!A1)=2,B!A1-A!A1,"") として下さい。  そして、CシートのA1セルをコピーして、CシートのA2以下に貼り付けて下さい。 又、CシートのA7セルに入力する関数は =SUM(A1:A6)として下さい。

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

>シートCセルa7に(a1+a2+a3+a4+a5+a6)の式を入力しました。 >シートBセルa3,a4,a5,a6に数値が入っていないので、シートCセルa3,a4,a5,a6とa7がエラー表示されています。 ここで突然a1,a2が除外されているのはなぜ? >、a7にはa1とa2の合計・・ 今まではA1からA6までの和を出そうとしていたのではないの? 突然A1とA2の合計になった意味は? ーー そもそも >、=if(B!a2="","",B!a2-A!a2)}を入力しました。 普通は、入力でなく、式の複写を使うのでは?複写も入力というならそれまでだが。 ーー =やSUMのセル範囲は空白セルが合っても0の扱いにしてくれるはず。 したいことを具体的に式を離れて文章にしてみればどうなる? 例 空白のセルを足しても0と表示されないように(すると空白にしたいが多いだろう)したいとか。

関連するQ&A

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

    セルHにIFとANDを使って下記内容の関数式を入力したいです。 セルAからセルF内すべてに数値が入っていたらセルFを返す、 セルFが空欄ならばセルEの数値を返す、 セルEも空欄ならばDの値を、 Dも空欄ならばCの値を、Cも空欄ならばBの数値を、 Bも空欄ならばAの数値を返し、 Aも空欄(つまりAからF内に数値なし)ならばスペースを返す。 わかる方、教えてください。 よろしくお願いします。

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

    IF関数について、皆様に質問です。 セルに入力された数値xがある数値yと同じか大きい場合は"NG"と表示し、数値aがある数値bと同じか小さい場合は"NG"と表示させたいと考えております。 IFを使って式を作成したのですが、『数式が多すぎる』というエラーになってしまいます。 具体的には、 セルB25に入力している数値が8.980の場合、 8.991と同じまたは大きい場合は"NG"と表示させたい。 同じセルB25で、8.969と同じまたは小さい場合は"NG"と表示させたい。 これをこのような式にしてみました。 =IF(B25<=9.991,"NG","",IF(B25>=9.969,"","NG")) これで『数式が多すぎる』というエラーになっています。 教えてgooで調べたのですが、解決には至っていません。 どなたかご教示いただけますでしょうか。

  • エクセルで・・・

    こんばんは。 質問をうまく伝えられないので,例で書かせてください。すみません。 例えば毎月1日~31日まで毎日1個ずつ何らかの数字を入力し(A1~A31) B1とA2の合計(=前日までの合計と今日の数値)を(B1~B31)に表示し,最後のB31の数値をB32に表示します。 この場合,B32に「=B31」にすれば表示されますよね。 では,このシートを毎月使用するとしますと, 30日や28日で終わる月が出てきます。 そうするとこの月はB31が空欄になるのでB32には何も表示されません。 B32に,常に最後の数値 (30日の月はB30,28日の場合はB28)が表示されるような関数などがありませんでしょうか。 if関数を使うと,この例の場合ならできますが 仮に入力項目が5件の月もあれば25件の月もある・・・のような場合 地道にif関数を使って作るのは面倒です。 何か良い方法がありませんでしょうか。 どうぞよろしくお願いいたします。

  • エクセル 数式について教えてください。

    エクセルの数式について教えてください。 教えてください。たとえばA1のセルが1000、B1のセルが500でC1のセルに=B1-A1と入力します。そうすると 500と表示されます。これはこれでいいのですがたとえばA1に1000入力しB1が空欄だとC1にはA1セルの1000が入力されます。 A1だけのセルに1000と入力した場合にC1には空欄か#DIV/0見たいなエラーメッセージをさせたいのですがどうすれば よろしいでしょうか?

  • エクセルの初歩的な質問です。

    困っています。(Mac v.Xを使用) 例えば、A1に数値で「100」と入力し、 B1からB10の合計「SUM(B1:B10)」をC1に表示させたとします。 C1の値がA1に入力した「100」よりも大きくなる場合に、 エラーメッセージが表示されるか、 又は、B1からB10にはC1がA1の値を超えることになってしまうような数値を入力出来ないようにしたいのです。 例えばB1からB5の合計が「100」になった時点でB6からB10のセルには「*」等の記号が表示されるか、入力が出来ない、といったように。 アドバイスをお願い致します。

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

    いつもお世話になります。 エクセルのIF関数について教えてください。 Aシートを入力用のシートとして使用し、別のシートに上記のIF関数を使いたいと思っています。 (1)AシートのAF15番地に数字があればその数字を返し、空欄であれば0を返す。  なおAF15番は元々は空欄で、数字を入れる場合は入力者は手動で数字を入れます。 (2)AシートのR26番地に※があれば1を返し、空欄であれば0を返す。  なおR26番地にはプルダウンリストをあらかじめ作成してあり、※か空欄かの2択になっています。 (3) 上記の(1)と(2)の合計値を別のシートのセルに返す。 【例1】AF15番地に3と入力して、R26番地は※を選択  ⇒ 4と表示 【例2】AF15番地は空欄のままで、R26番地は※を選択  ⇒ 1と表示 【例3】AF15番地に1と入力して、R26番地は空欄を選択 ⇒ 1と表示 【例4】AF15番地が空欄のままで、R26番地は空欄を選択 ⇒ 0と表示 私は、このように作ってみたのですが、エラーが出てしまいます。  =(IF(Aシート!AF15="","0",Aシート!AF15))+(IF(Aシート!R26="※","1","0")) エラーの原因を教えていただけると大変助かります。 なお(1)同士のIF関数の組み合わせは問題なく動作しました。 よろしくお願いします。

  • エクセルのIF式教えて下さい。

    何度やっても上手く思うように行きません。 IF式の組み立て方が悪いのか? AND、ORの使い方が悪いのか? お手上げの状態です。 質問は、2つのパターンです。 助けて下さい。 質問1 セルA1にデータ10と入力 セルA5にデータ5と入力 セルA9に大きい値の10を表示させ、セルA1が空欄の時は、空欄にしたい。 セルA10に小さい値の5を表示させ、セルA5が空欄の時は、空欄にしたい。 質問2 セルB2に1を入力 セルC2に1を入力 セルD2に両方が1以上ならOK、それ以外ならNGと表示させたい。 以上の2つの質問のIF式を教えて下さい。

  • Excel 関数について

    Excelの関数で例えば、セルのC1にA1とB1の合計を表示させたければ、C1のセルに「=A1+B1」と入力すれば表示できますよね。 そこで質問なのですが、C1のセルに「=A1+B1」と入力したとして、A1とB1に数値を入力していない場合にC1には0と表示されます。その0を表示させたくない場合にはどのような作業をすればよいのでしょうか? 教えてください!(^^)!お願いします!!

  • エクセル、VLOOKUP関数について

    (1)セルAの値を他シートから検索 (2)セルAが空欄なら空欄を返す (3)セルAが空欄でなければ、その検索したセルの値を返す (4)検索したセルが空欄であればBを返す =IF(ISNA(VLOOKUP(A1,他シート!$B$4:$G$501,2,0)),"",IF(VLOOKUP(A1,他シート!$B$4:$G$501,2,0)="","B",VLOOKUP(A1,前年度成績!$B$4:$G$501,2,0))) という風にしたくて、上記の式を書きましたが、(4)の検索したセルが空欄であってもBが表示されません。 どこを直せば良いか、教えてください。

  • エクセルでのセルの参照

    sheet1にデータが入力されています。 そしてsheet2ではそのsheet1に入っているデータを 抽出するsheetとして使用しています。 そこで、sheet2にある一つのセルに3と入力したら sheet1で使用しているA3、B3、C3、D3・・・ のセルのデータを、 4と入力したら A4、B4、C4、D4・・・ のセルのデータをsheet2のそれぞれのセルに引っぱってこれるように 関数を書きたいと考えています。 INDIRECTが機能的に近いのかなと考え、式を試してみたのですが なかなかうまくいきません。 また、4と入力したときにA5、B5、C5、D5を参照するというように 数値をいじったりできるであればそれも教えていただきたいです。 よろしくお願いいたします。

専門家に質問してみよう