0表示が消せない

スプレッドシート (Calc) について
返信する
ninsui
記事: 6
登録日時: 2月 19, 2012, 4:39 pm

0表示が消せない

投稿記事 by ninsui »

すべてのセル書式が「先頭のゼロ=0」の設定で、各セルが以下の内容だと、A6セルも含めて何も表示されません(""は何も入力されていない状態を示す)。

A3 ""
A4 ""
A5 =A3
A6 =A3&A4

しかし、以下の内容だと、A6セルのみに 00 が表示されてしまいます。

A1 ""
A2 ""
A3 =A1
A4 =A2
A5 =A3
A6 =A3&A4

このおかげで、たとえば、住所1(東京都港区南青山二丁目4-15)と住所2を連結させている場合で、住所2に記述がなかった場合、"東京都港区南青山二丁目4-150"になってしまいます。これを回避する方法があればご教示ください。
OpenOffice 4.1.1
Windows 8.1
h-taka
記事: 6
登録日時: 5月 10, 2011, 10:51 pm

Re: 0表示が消せない

投稿記事 by h-taka »

A6セルにA4セルの値を判定して、結合(&)するしかないですかね。

=A3&IF(A4=0;"";A4)

なお、A3、A4セルがセル参照(それぞれA1,A2)になっていない場合に、結合(&演算子)しても「先頭のゼロ=0」が効いているように見えるのは、仕様であるかどうかは不明ですが。
OpenOffice.org 3.3.0 WindowsXP pro(SP3)
ninsui
記事: 6
登録日時: 2月 19, 2012, 4:39 pm

Re: 0表示が消せない

投稿記事 by ninsui »

コメントありがとうございました。

A3に必ずしもデータが入るわけではなければ、現状では if(A3="";"";A3)&if(A4="";"";A4) という、実にみっともない式を書かなければならないようです。残念 orz

その後、気になってExcelでも試してみましたが、こちらでも同様でした。それで安心していいのかどうかわかりませんが、仕様がそうなら、参照する側のセルで式を書くより、参照される側で処理したほうが、後々問題がなさそうです。

以下の内容であれば、セルの設定にかかわらず、イメージ通りに表示されました。他のセルを参照するときは、いったん別のセルを経由するようにすればいいだけなので、パターン化するのも簡単かもしれません。

A1 ""
A2 ""
B3 =A1
B4 =a2
A3 =if(B3="";"";B3)
A4 =if(B4="";"";B4)
A5 =A3&A4
OpenOffice 4.1.1
Windows 8.1
返信する

“Calc”に戻る