- ベストアンサー
エクセルでセルに入っている数字が文字列か数値かを判別
仕事上のあるデータを人にエクセルで表にしてもらいました。できた表をチェックしているとなんとなく合計値がおかしいような気がして、試しに手計算で足し算をしたところ違っていました。さらに詳細を調べるとどうも「表面上は数値だが実は文字列」というセルがいくつかあることがわかりました。 一体どのようにしてこんな表を作ったのか(できてしまったのか)わかりませんが、問題は、作った人にもどれが文字列でどれが数値かわからないということで、チェックをするしかないのですが、なにせデータ数は数百個あるので1個1個書式をチェックするのは至難の業・・・なにかスマートなよい方法ありませんか??
- みんなの回答 (7)
- 専門家の回答
質問者が選んだベストアンサー
仮に、A1にデータが入っているとして、BIに「=ISNUMBER(A1)」と入れてみてください。数値ならTRUE、文字ならFALSEがかえります。
その他の回答 (6)
- papayuka
- ベストアンサー率45% (1388/3066)
まず念の為、変換したい範囲を選択し、セルの書式設定で標準か数値にします。 次にメニューのデータ-区切り位置-完了で文字列扱いの数字は全て数値に置換わります。
お礼
すごい!こんなワザもあるのですね! 勉強になりました。
- imogasi
- ベストアンサー率27% (4737/17070)
使っていないシート1枚かシート挿入で、1枚ブランクのシートを用意します。 そのシートのA1セルに =IF(ISBLANK(Sheet1!A1),"",IF(ISNUMBER(Sheet1!A1),"","M"))といれて、A列について、データシート表の最下行まで複写します。その後データシート表の最右行までA列を複写します。 Mが出たセルが文字が入っています。 それでチェックしてはどうですか。 数値の方を記しを出したければ =IF(ISBLANK(Sheet1!A1),"",IF(ISNUMBER(Sheet1!A1),"N",""))とする手もあります。 VBAで良ければ、同じことを、余分なSheetを使わずできそうです。
- Hageoyadi
- ベストアンサー率40% (3145/7860)
文字列だろうが数値だろうが四則演算に組み込むと解をきちんと計算した上、数値として考えるのがバカExcelの仕様です。 別のシートで =Sheet1!A1*1 と入力すると見掛けは同じにできます。
- comv
- ベストアンサー率52% (322/612)
こんにちは 確認する関数は既に記載されているので 複数列 複数行の 数字を数値にする例を ・入力範囲を選択 書式設定 表示形式 を 数値や標準にする ・適当な空きセルに 1 と入力コピー ・入力範囲を選択 編集 形式を選択して貼り付け 値 と 乗算 にチェック OK
- taknt
- ベストアンサー率19% (1556/7783)
>数百個あるので それは 大変ですね。 ここは、ちょっと 奮発して オフィスXPを買ったらいいですね。 そのような箇所は 一発で わかりますよ。
- kojitti
- ベストアンサー率32% (449/1386)
IS関数をご使用されてはどうでしょうか。 ISNUMBERまたはISTEXTでよろしいかと思います。
お礼
ありがとうございます。 そのような関数があること知りませんでした。 というか、NO.2の方の具体的なアドバイスで使い方がわかったのですが・・・ 結論としては、この関数を使ってチェックが完了しました。 ありがとうございました。
お礼
教えていただいたコマンドを使ってチェックを完了しました(奇しくもNO.6の方の方法と全く同じやりかたになっていました)。 ありがとうございました。