Numbers08→09で式エラー

09で08で使用していたファイルを開くと、 画面のようにところどころで赤▲エラー表示がでるようになりました。

例えば、画像の部分の式は =IF(9月 :: G33-M10=0,"",9月 :: G33-M10) で、

別な二箇所(G33とM10)の数値を参照し、未記入又は0ならば空白に、そうでなければ実数を表示しろ、との簡単な式です。

ここら辺の取り扱いがNumbers09で変化したのか、それとも08では顕在化しなかったけれど式自体が間違っているのでしょうか。

投稿日 2009/09/11 19:00

返信
返信: 6

2009/09/11 22:48 harubang への返信

エラーメッセージ通りです。

""(長さ0の文字列)は未入力状態とは違って、足し算や引き算ができないということですね。関数[sum]は0と見なすようです。


Numbers '08では長さ0の文字列は0と見なされるようです。


仕様が変更されたのか、バグなのか、そもそも仕様がないのか(笑)

2バイト数字でできた文字列(例えば’15)をそのまま数値として扱えるような柔軟性をもっているソフトなので、長さ0の文字列を未入力と見なして足し算をしてくれるくらいのことはしてもよいとは思いますが。


現象として条件式の中の""は未入力セルでも真になるので、現状では

=IF(9月 :: IF(G33="",0,G3)-IF(M10="",0,M10)=0,"",9月 :: G33-M10)

の様に書くしかないのでしょう。


フィードバックをお勧めします。

https://regist.apple.co.jp/feedback/numbers/

2009/09/11 23:19 こういち への返信

こういちさん、お休みのところ回答いただきありがとうございます。

08と09の違い、原理的な面はゆっくり理解する事にして、とりあえず赤▲エラー表示を消そうと教えていただいた数式に変更したところ

『この数式には構文エラーが含まれています』

となります。

試行錯誤しましたけど解決には至りません。検討していただけないでしょうか。

-

なおフィードバックは一段落ついたら行います。

2009/09/12 00:21 harubang への返信

harubang による書き込み:


『この数式には構文エラーが含まれています』


あー!すみません。

表の指定があるのを忘れて変な式を作ってしまいました。(凡ミスも有るし)

=IF(IF(9月 :: G33="",0,9月 ::G33)-IF(9月 ::M10="",0,9月 ::M10)=0,"",9月 :: G33-9月 ::M10)

です。

G33とM10のどちらかだけ空白というのが有り得るなら

=IF(IF(9月 :: G33="",0,9月 ::G33)-IF(9月 ::M10="",0,9月 ::M10)=0,"",IF(9月 :: G33="",0,9月 ::G33)-IF(9月 ::M10="",0,9月 ::M10))

です。

2009/09/12 00:44 こういち への返信

早速修正いただき恐縮です。

試行錯誤していた時、括弧の数と位置やIFのことばかり考えていて、9月 :: の事はすっかり頭から抜け落ちていました。^_^;

G33とM10のどちらかだけ空白というのが有り得るので、二番目の式に修正したところ希望通りの結果になりました。ありがとうございます。

このスレッドはシステム、またはAppleコミュニティチームによってロックされました。 問題解決の参考になる情報であれば、どの投稿にでも投票いただけます。またコミュニティで他の回答を検索することもできます。

Numbers08→09で式エラー

Apple サポートコミュニティへようこそ
Apple ユーザ同士でお使いの製品について助け合うフォーラムです。Apple Account を使ってご参加ください。