これを回避し、""(ブランク)の時も通常のブランク(NULL値?)と同様に、ゼロとして計算したいのですが、何か案は無いでしょうか。参照している側の式で工夫するというよりは、""と指定しているのを別のものにしたいと思います。
尚、""の代わりに0(ゼロ)を入力すればいいのですが、今回その選択肢は無しです。(見た目の問題)
こういう場合、sum関数を利用して計算させたりします。
B1 =if(a1<0,"",a1) で、a1 =-1 ならば、B1 ="" となります。
B2 =if(a2<0,"",a2) で、a2 =10 ならば、B2 =10 となります。
C1 =B1+B2 は、#VALUE!エラーです。
C2= sum(B1)+sum(B2) では、10となります。
#sum(B1)は0 、でもsum("")は#VALUE!エラー・・。
数式を
=IF(A1<0,0,A1)
にします。
次に、この数式のあるセルの表示形式を次の様に設定します。
[セルの書式設定]ダイアログ-[表示形式]-[ユーザ定義]を選択して、
「#」に設定します。カンマ編集表示にしたい場合は、「#,###」にします。
以上です。
表示だけなら、その手もありますね。
ただし、""と入れた所は初期の空白(NULL値?)のように扱いたい理由がもう一つあって、Ctrl+カーソルで、ブランクの所でカーソルが止まる機能があると思いますが、""の所でもブランクと同じでカーソルが止まって欲しいんです。よって、""の代わりに0は不可としたいです。
追加の方法です。
3)[入力シート]と[計算シート]のふたつに分ける。
[入力シート]は0値を入れないまま。
[計算シート]は全のセルで
=IF(入力シート!A1<>"",入力シート!A1,0)
のように[入力シート]の該当セルを参照しておき、[計算シート]を参照して計算する
4)計算用の隠し列(行)を隣にでも作成する
例えば
入力列 0値を入れない
計算列 =IF(A1="",0,A1)
計算は計算列で行い、普段は計算列を非表示で隠しておく。
計算式で参照している以上、0値を入力するべきかと思いますが・・・
1)該当セルを参照している計算式の参照方法を変える
例:=(IF(A1="",0,A1)+IF(B1="",0,B1))
2)あえて0値を入力して、セルの書式設定を変更することで0値を表示させない
そうですか、シンプルにやるのは、中々難しいんですね。回答ありがとうございました。
こういう場合、sum関数を利用して計算させたりします。
B1 =if(a1<0,"",a1) で、a1 =-1 ならば、B1 ="" となります。
B2 =if(a2<0,"",a2) で、a2 =10 ならば、B2 =10 となります。
C1 =B1+B2 は、#VALUE!エラーです。
C2= sum(B1)+sum(B2) では、10となります。
#sum(B1)は0 、でもsum("")は#VALUE!エラー・・。
なるほど、参考になります。
こんにちは、はじめまして。
最初の回答者のllusallさんの方法でも、cntl+カーソルでカーソルが 0 を非表示にしたところで止まると思いますが…。
というか、cntl+カーソルは、元々のブランクのところでは止まらずに、むしろそれ以外のところですべて止まるように思えます。
私のとExcellのバージョンが違うのかな…?
ご参考までに。
Excelは同じ仕様です。
表現が悪かったですね。数字が入っているところだけでカーソルを止めたいんです。つまり現在""としているところ(提案では0のところ)の手前でカーソルを止めたいんです。
4番JunKさんが書かれているようにSUM関数を利用するのが一番シンプルかと思います。
JunKさんが紹介されているように、下記の式でもOKですし、
連続した範囲なら↓このように、
非連続のセルなら↓このように記述する事も可能です。
※いずれの場合も "" が含まれていてもエラーになりません
ただ一つ気になったのですが、IF関数で "" とした場合、
通常の空白セルとは違い Ctrl+矢印キー ではカーソルが止まりませんが...。
(Excel2000とExcel2003で検証しました。ash730さんの環境ではカーソルが止まりますか?)
Ctrl+矢印キー で止まるようにするには、数式を消して空白セルに
する必要があります。数式を残しておきたい場合には使えませんが、
データの入力が終わって数式を消しても問題ないようであれば、
以下の方法で "" としたセルの数式のみを消す事が可能です。
以上、[ジャンプ]の[セル選択]という機能は便利なので、
覚えておいて損は無いですよ!
なるほど、参考になります。