文字になっている数字を計算するために各データに1をかけて数値に変換していましたが、ふと、何故そのようになるのかなと疑問を持ちました。どなたかおわかりの方は教えていただければありがたいです。よろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (4件)

四則演算に限って,文字列で記入された数字を数値に読み替えて計算してくれます。

(数値に読み替えできない文字列に対して同じ事をすると,#VALUEのエラーになります)
ご存じの通り,一般に関数の計算ではそういう変換をしてくれません。

例:
A1に文字列で数字が記入してある

数値に読み替えてくれる例
=A1*1
=A1+0
=--A1 (マイナスマイナスA1)

計算が通らない関数の例
=SUM(A1)
=VLOOKUP(A1,…
=IF(A1=数値,…
=IF(A1>数値,…

計算を通す数式の組立の例:
=IF(A1-数値=0,…
=IF(VALUE(A1)=数値,…

#参考
しばしば見かけるご相談ですが,RIGHT関数やLEFT関数,MID関数などの文字列操作関数で抜き取ってきた数字も文字列なので,上述と同じ扱いになります。
    • good
    • 0
この回答へのお礼

ありがとうございました。

お礼日時:2011/04/28 18:37

エクセル特有の仕様(仕組み、思いやり、お節介、実用本位)でしょう。


エクセルは表計算ソフトで、計算が本旨です。だから入力したデータを出来るだけ数字にして、セルの値としてセットしようとしている風が、諸所に見てとれる。
エクセルは言語じゃないが、プログラム言語の中には、変数について、こんな融通(型変換)をしないものも多い。
・全角の数字文字を入れても数値に
・空白セル参照は数式を通すと0に
・空白は0の扱いの関数もある
・本件のように、*1を掛けるケース
・TRUE、FALSEなども1,0を割り当て
ーー
使い慣れるか、イヤならVALUE関数やN関数など使えば良い。
    • good
    • 0
この回答へのお礼

ありがとうございました。

お礼日時:2011/04/28 18:39

文字数字を数値に変換する方法としてエクセルが提供している仕様みたいです。


他の変換方法は添付のURLを参照して下さい。

参考URL:http://support.microsoft.com/kb/181298/ja
    • good
    • 0
この回答へのお礼

ありがとうございました。

お礼日時:2011/04/28 18:38

value関数を使うのは?


=value("123")
    • good
    • 0
この回答へのお礼

ありがとうございました。

お礼日時:2011/04/28 18:36

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング