- ベストアンサー
エクセルで数字の文字列を計算させたくないのですが、うまく出来ません。良い方法はないでしょうか?
エクセル2003で、下記のようにセルに入力したとします。 A B C 1 10 20 2 11 ’21 3 13 14 4 ※B2は「’」をつけて数字の文字列として認識させています。 B4のセルに、=SUM(B1:B3)とすると、うまく34となってくれますが、 C2のセルに、=A1+B2とすると、32となってしまいます。 当方としては、B2を文字と認識してほしいので、求めている答えは11です。 数字の文字列を文字列のまま処理して、計算させない方法はあるでしょうか? 皆様、ご教授願います。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
> =A1+B2とすると、32となってしまいます 31じゃないですか? > B2を文字と認識してほしいので、求めている答えは11です。 A1が10だから、答えは10では? =A1+B2とすると、数値化できる文字列は数値とされてしまうので =SUM(A1,B2) でいかがでしょう?
その他の回答 (3)
- imogasi
- ベストアンサー率27% (4737/17069)
+演算子を使っては出来ないでしょう。 エクセルは表計算ソフトで、数の計算は重視している。 ですから数字文字でも数値化する力は絶対的。MSはそれが良いと思ったのでしょう。そのほかに日付化の強制力も強烈。 ーー 例データ B2:B4 1 "22 "34 他のセルに =IF(ISNUMBER(B2:B4),B2:B4,0) と入れて、SHIFT+CTRL+ENTERを同時押しする。 SUMPRODUCT関数でも出来ると思う。 結果 1(B2だけ足しこみ) 上記のように難しく考えなくても、=SUM()関数を使えばよいのだが。
お礼
回答ありがとうございます。 >+演算子を使っては出来ないでしょう。 >エクセルは表計算ソフトで、数の計算は重視している。 >ですから数字文字でも数値化する力は絶対的。 知りませんでした。参考になります。 SUM関数以外でもできるんですね。 今回はSUMで処理しますが、他の機会に使ってみようと思います。 ありがとうございました。
- Hachi5592
- ベストアンサー率36% (252/698)
SUM関数では形式が文字列の場合、対象から外しますが、セル加算では 加算の対象とします。 そこで質問のC2セルには「=SUM(A1,B2)」とすれば求める値が得られます。
お礼
回答ありがとうございます。 問題解決できました。 またなにかありましたら、よろしくお願いいたします。
- kazz_925
- ベストアンサー率22% (2/9)
sum()は関数なので、文字列を除去しますが、A1+B2は演算なのでエラーとなるはずです⇒'21だと数値として扱いますが、文字そのもの(aとかb)を入れるとエラーになりますよね。 横計算もsum()等の関数を使用すれば、除去出ると思います。
お礼
回答ありがとうございます。 演算は数字文字列を除去できないんですね。 参考になります。ありがとうございました。
お礼
早い回答ありがとうございます。 確かに文面を見ると31ですね。 本当は、=A2+B2と書きたかったんです。 混乱させてすみませんでした。 他の回答者様からも回答がありましたが「+」では、だめなんですね。 知りませんでした。SUM関数でやればよかったんですね。 問題解決です。 ありがとうございました。