• ベストアンサー

Excelでセルに入力されている値を確認する方法

Excel2007を使っています 友人から渡されたファイルでおかしな現象が起きました あるセルで =1-B5 を計算すると #VALUE! エラーになりました B5セルは数式バーを見てもスペースが入っているわけではなく 何も表示されていません しかし ジャンプ機能で”文字”を指定すると このB5セルがヒットします こういった現象はどのようなことが原因で回避策としてはどのようなことが考えられるでしょうか 童謡の操作を今後も繰り返す恐れがありますので 予防のため是非知りたいと思います よろしくお願いします

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

  • ベストアンサー
  • end-u
  • ベストアンサー率79% (496/625)
回答No.2

#今手元に2007がないので2003での話なんですが、基本的には2007も同じ状況と思われます。 例えば、数式の結果でエラー表示させたくなくて =IF(A1="","",VLOOKUP(A1,B:C,2,0)) などとする事がありますね。 この結果『""』が数式の答えになった場合、表示上は何も表示されません。 簡易的に ="" とセルに入力し、これを[コピー]-[形式を選択して貼り付け]-[値]にすると、ご質問の状況が再現できます。 この『""』は「長さ0の文字列」です。 ジャンプ機能の「文字」にヒットしますし、 =TYPE(B5) の結果は 2 となり、データタイプがテキストである事がわかります。 =LENB(B5) の結果は 0 です。 以上が考えられる原因の1つですが、よく使われる手法ですので、回避する方法といっても、なかなか難しいのではないでしょうか。 解消方法としては、簡易的なマクロで With ActiveSheet.UsedRange   .Formula = .Formula End With こんな感じで解消できたりしますが、(全てのケースに対応できるわけではない。数式セルの表示形式を後から文字列に変更したりしてると悲惨) 手作業の場合、単独セルなら選択して[F2][Enter]。 複数範囲なら各列単位で選択して[データ]-[区切り位置]-[完了]。

noname#140567
質問者

お礼

ありがとうございました ドンピシャの現象です おかげですっきりしました

その他の回答 (3)

  • end-u
  • ベストアンサー率79% (496/625)
回答No.4

そう言えば、[ツール]-[オプション]-[移行]タブの「シートオプション」の「計算方式を変更する」にチェックを入れると、 数式の評価方法としてLotus 1-2-3 の方式が使われるようになり、文字列のセルは 0 として扱われるようになります。 これはシート単位に設定できます。 2007での設定はこちら↓ http://pasofaq.jp/office/excel/tabshift.htm 一応、これで「長さ0の文字列」があっても対応可能ですが、特異な設定なのであまりおすすめしません。 同じ数式でも、シートやBookによってエラー結果で違いが出てくるというのは混乱の元になりますからね。 例えば&を使った文字列結合の数式 ="文字"&A1 の場合でも、A1に何も入力されてないとExcel方式とLotus方式で結果が違ってくるようです。 まあ、『そのような機能もある』という情報程度に留めておいてください。

  • a987654
  • ベストアンサー率26% (112/415)
回答No.3

2007のいやらしい所ですね。 例えば A1に ' のみを入れるとセルの確認で ' が出ますよね。 A2に =A1 を入れた後 A3にA2を「値複写」して A3を確認すると何も表示されませんが、 A4に =A3*2 とか入れると #VALUE! になります。 つまり2007ではセル表示されずに空文字列のセルになっています。 2003では A3はA1と同様に ' が出ます。 2007で2003の様に表示する設定があれば回避出来るのですが、 生憎ですが私は知りません。 これが出たときは対象のセルで DELキー を押してやれば #VALUE! は 消えます。 中途半端な回答にてすみません。

noname#140567
質問者

お礼

ありがとうございました 大変参考になりました

  • suzukikun
  • ベストアンサー率28% (372/1325)
回答No.1

数式バーの右端でクリックするとカーソルが左端じゃなくて途中に出てきませんか?スペースが入っているのだと思います。

noname#140567
質問者

補足

もちろん確認済み スペースは入っておりません

関連するQ&A