• ベストアンサー

Excel関数で表示させないセル

       1日  2日  3日  4日 日収入 150000 30000 累 計 150000 180000 180000 180000 罫線がなく見にくくてすみませんが、これは=B3+C2(1日累計150000+2日日収入30000=2日累計180000)と表示しC3(2日累計)セルを右ドラッグした結果ですが、D2(3日日収入)以降に新たな数字を入れない限りD3(3日累計)以降に180000と表示しないようにしたいのですが、ご教示くださるようお願いいたします。

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

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

まず、一つ上のセルが空っぽだったら""にする、そうでないときは「計算をする」という数式を作成します。 C3: =IF(C2="","",計算式) 次に。 一つ上のセルが空っぽじゃなかったときには、具体的に何を計算するか考えます。 あなたの今のイメージで言うと C3: =IF(C2="","",B3+C2) を右にコピー ということになります。 今のその表でこの通り作成すると、とりあえず希望通りの結果になります。 で、実際に手を動かしてこの通り作成して使ってみると、この数式じゃ時々計算できずにエラーが一斉にずらっと並んでしまう場合がある事に気が付きます。 どういうときにそうなるのかは、まぁ一度実際に手を動かして実際にエクセルを作って、色々試してみて下さい。 そういうときは、「隣のセルと計算する」という計算のやり方をやめて、違う方式にします。 たとえば C3:毎日最初から累計する =IF(C2="","",SUM($B2:C2)) を右にコピーします。

tutuke15
質問者

お礼

おかげさまで出来ました。よかったです。

その他の回答 (2)

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

 以下は、2行目において、もし途中にも数字が入力されない列が存在する場合(例えば、1日と2日と4日には数字が入力されていて、途中の3日の所には数字が入力されていない、という様な場合)においても有効な方法です。  まず、(C3ではなく)B3セルに次の関数を入力して下さい。 =IF(ISNUMBER(B$2),SUM($B$2:B$2),"")  そして、B3セルをコピーして、C3~E3等のB3セルよりも右側にあるセルに貼り付けて下さい。  以上です。

tutuke15
質問者

お礼

ご指示の通りで出来ました。今後の参考にいたしますありがとうございました。

  • asciiz
  • ベストアンサー率70% (6803/9674)
回答No.1

現在は、単純に C3 = B3+C2、とやっているわけですね。 ここで、 C2が空白ならば空白のままにしたいと。 それならば、if関数を使ってこのように書きます。 C3 = if(C2="", "", B3+C2) もし、C2が空白("")ならば、空白を表示し、そうでなければB3+C2を計算せよ、という式です。 後はこれをフィルハンドル(セル右下のドット)を掴んでドラッグすれば、式のコピーが出来ます。

tutuke15
質問者

お礼

早速のご教示ありがとうございました。参考にしたいと思います。

関連するQ&A