人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Excelで=if(a1<0,"",a1)といった式を作ったとすると、""(ブランク)か、a1の値のどちらかが表示されます。""(ブランク)が表示されるとき、このセルを参照した足し算等の計算式は、#VALUE!エラーとなります。
これを回避し、""(ブランク)の時も通常のブランク(NULL値?)と同様に、ゼロとして計算したいのですが、何か案は無いでしょうか。参照している側の式で工夫するというよりは、""と指定しているのを別のものにしたいと思います。

尚、""の代わりに0(ゼロ)を入力すればいいのですが、今回その選択肢は無しです。(見た目の問題)

●質問者: ash730
●カテゴリ:学習・教育 科学・統計資料
✍キーワード:A1 Excel エラー セル ゼロ
○ 状態 :終了
└ 回答数 : 6/6件

▽最新の回答へ

1 ● llusall
●19ポイント

数式を

=IF(A1<0,0,A1)

にします。

次に、この数式のあるセルの表示形式を次の様に設定します。

[セルの書式設定]ダイアログ-[表示形式]-[ユーザ定義]を選択して、

「#」に設定します。カンマ編集表示にしたい場合は、「#,###」にします。

以上です。

◎質問者からの返答

表示だけなら、その手もありますね。

ただし、""と入れた所は初期の空白(NULL値?)のように扱いたい理由がもう一つあって、Ctrl+カーソルで、ブランクの所でカーソルが止まる機能があると思いますが、""の所でもブランクと同じでカーソルが止まって欲しいんです。よって、""の代わりに0は不可としたいです。


2 ● mestallajp
●19ポイント

追加の方法です。

3)[入力シート]と[計算シート]のふたつに分ける。

[入力シート]は0値を入れないまま。

[計算シート]は全のセルで

=IF(入力シート!A1<>"",入力シート!A1,0)

のように[入力シート]の該当セルを参照しておき、[計算シート]を参照して計算する

4)計算用の隠し列(行)を隣にでも作成する

例えば

入力列 0値を入れない

計算列 =IF(A1="",0,A1)

計算は計算列で行い、普段は計算列を非表示で隠しておく。


3 ● mestallajp
●18ポイント

計算式で参照している以上、0値を入力するべきかと思いますが・・・

1)該当セルを参照している計算式の参照方法を変える

例:=(IF(A1="",0,A1)+IF(B1="",0,B1))

2)あえて0値を入力して、セルの書式設定を変更することで0値を表示させない

http://www.relief.jp/itnote/archives/000413.php

◎質問者からの返答

そうですか、シンプルにやるのは、中々難しいんですね。回答ありがとうございました。


4 ● JunK
●18ポイント ベストアンサー

こういう場合、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!エラー・・。

◎質問者からの返答

なるほど、参考になります。


5 ● day_diamond
●18ポイント

こんにちは、はじめまして。

最初の回答者のllusallさんの方法でも、cntl+カーソルでカーソルが 0 を非表示にしたところで止まると思いますが…。

というか、cntl+カーソルは、元々のブランクのところでは止まらずに、むしろそれ以外のところですべて止まるように思えます。

私のとExcellのバージョンが違うのかな…?

ご参考までに。

◎質問者からの返答

Excelは同じ仕様です。

表現が悪かったですね。数字が入っているところだけでカーソルを止めたいんです。つまり現在""としているところ(提案では0のところ)の手前でカーソルを止めたいんです。


1-5件表示/6件
4.前の5件|次5件6.
関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ