• 締切済み

Excelで数値を文字列にした時

例えば0001の前に「’」をつけると、0001って文字列になりますよね。 で、A1に「0001」って表示されて、オートフィルを使ってドラッグすると A2以降に0002~の番号がふられます。(今回はA1:A10に0001~0010まで ふっているということで) で、この0001とか0002って文字列のはずですよね。 なのにB1のセルに=A1+A2にするとちゃんと「3」て出てくるんですよ。 でも、COUNT関数でA1:A10を指定すると「0」が表示され、COUNTA関数で A1:A10を指定すると「10」が表示されてるってことはやっぱA1:A10のデータ は文字列ですよね。 他にもフィルタオプションで「>=’0005」(シングルクォーテーションは半角) とかって指定してもちゃんと抽出されたりと、 この「’」をつけるというのは数値を完全に文字列にしているのでしょか? ご存知の方教えてください。

  • MRD
  • お礼率25% (42/168)

みんなの回答

  • kbonb
  • ベストアンサー率51% (254/492)
回答No.2

こんにちは  以下のページがご参考になるのでは? [XL2000] 文字数値を数値に変換する方法 http://www.microsoft.com/JAPAN/support/kb/articles/J048/6/01.asp [XL2000] 数字を文字列として書式設定した場合の予期しない動作 http://www.microsoft.com/JAPAN/support/kb/articles/J048/7/87.asp [XL97] 数字を文字列として入力する方法 http://www.microsoft.com/japan/support/kb/articles/J023/4/30.asp [XL97] 表示形式を文字列から数値へ変更後も値が文字列の場合 http://www.microsoft.com/JAPAN/support/kb/articles/J031/0/94.asp

参考URL:
http://www.microsoft.com/JAPAN/support/kb/articles/J048/6/01.asp
  • kougasha
  • ベストアンサー率32% (34/105)
回答No.1

Excelは、取り扱うデータ型について、よく言えば「融通がきく」、悪く言えば「厳密さに欠ける」ので、たとえセルの書式が文字であっても、演算子で指定された値が数値として認められるものであれば、自動的に内部で数値化して計算してくれるのです。   VBAなんかでいうと、データ型に「Valiant型」というのがあります。 このValiant型というのは、数値とも数字 (文字列) とも解釈できる値を変数が保持している場合でも、この変数に対して数値演算を正常に行うことができます。 たとえば、+ 演算子を使って数値データを保持している他のバリアント型変数や通常の数値型を持つ変数を Valiant型の値に加えると、その結果は 2 つの値の合計になります。

関連するQ&A

  • Excel 数値を文字列にしたい

    お世話になります。 例えば、型番として  0001  0001A  0001B  0002   ・   ・ というものがあった場合、0001と0002は数値と認識されて1と2に なってしまいます。 この状態で、セルの書式設定で文字列にしたとしても、現状の1が 文字列になるだけです(要するに手遅れ)。 また、頭にシングルクォーテーションをくっつけて'0001や'0002と 入力してやればよいかと思うのですが、上記のようなケースが 数百行あった場合、ひとつずつシングルクォーテーションを くっつけていくには手間がかかります。 何かよい方法はございますでしょうか。 ご教示の程、宜しくお願い致します。

  • 正規表現:囲われた文字列の置換

    シングルクオーテーションで囲われた文字列のシングルクオーテーションの前に文字を追加するように、正規表現を用いて置換しようと考えています。 全角文字は[^\x01-\x7E]で検索できるのはわかったのですが、シングルクオーテーションで囲われて、全角文字を含む場合という表現ができません。 下記のような、文字列を対象としています。置換をするのは、全角文字を含む文字列のみです。  全角文字のみ  半角文字のみ  全角半角文字両方 下記ののように置換したいです。 置換前: '全角文字や半角文字','testです','test'.'テスト'.'てすとtest','123' 置換後: A'全角文字や半角文字',A'testです','test'.A'テスト'.A'てすとtest','123' よろしくお願いします。

  • 半角シングルコーテーションを文字列として扱う方法

    VB6にて、シングルコーテーションを文字列として使用したいのですが、良い方法はないでしょうか。 例:マンション名等で   ○○○k's A棟        ↑   でシングルコーテーションを半角で使用したい。

  • Excelで、数値データとして参照したいのに、文字列データとしてしか参照してくれません

    Excelで、ある数式セルに表示されたデータを、数値データとして参照したいのですが、どうやっても文字列データとしてしか認識してくれません。 具体的に書くと、 例えばセルA1に、FIND関数で他のセルから抜き出した半角数字のみのデータを表示しているとします。 そのA1の数値を、今度はセルA2で、 if(A1=1000,A1*2,A1/2) などと数式で参照したい時に、私のExcel(2002です)では、どうやってもA1=1000という条件式をきちんと判別してくれません。どうやら、FIND関数で抜き出したために文字列データとして扱われてしまっているようです。 その証拠に、A1が実際に「1000」の時に if(A1="1000",A1*2,A1/2) という風に1000をダブルクォーテーションで囲んで式を書くと、きちんとA1*2を実行してくれます(つまり、A1が実際に1000の時でも条件式の1000をダブルクォーテーションで囲まないと、きちんと判別してくれないという事です)。 この状態から抜け出せずに、どうにも困っています。 どうにかA1の「1000」というデータを文字列でなく数値データとして条件式で利用できるように出来ないものでしょうか。 乱文ですみませんが、よろしくお願いいたします。

  • Excelの文字数が決まっていない文字列の抽出

    教えてください。Excelで、文字数の決まっていない文字列を抽出したいのですが、例えば、 セルA1 : プロジェクト1 簡単な文章 2352 PD_JOK セルA2 : プロジェクト13 複雑な文章列とは決まっていない 2453 AO_JKI ・・・・・・ というセルから、 プロジェクト名から、半角数字前までの文字数が決まっていない文字列「簡単な文章」や「複雑な文章~」をセルB列に抽出する方法を教えていただきたいのですが、 そして、半角数字後の半角英字「PD_JOK」をセルC列に抽出する方法も同時に教えてください。 万単位でデータがあるので、関数を使わないと難しいです。 よろしくお願い致します。

  • 指定した文字列が抽出できる関数

    Excelで、指定した文字列だけを抽出表示する場合、「文字列を先頭(左)から抽出する」などの関数は「LEFT関数」や「RIGHT関数」がありますが、位置の指定ではなく、文字列の中にある、特定の文字だけを指定して抽出してできる関数は何でしょうか? たとえば「ラーメン」「うどん」「そば」いずれかを「含む」文字列が入っているセルの中から、「うどん」のセルだけを抽出して表示するという場合です。

  • c言語の文字、また文字列について

    c言語の文字、つまり「'(シングルクオーテーション)」で囲んだ単数の半角文字は、メモリに保存されているのでしょうか。 また、アドレスは有るのでしょうか。 c言語の文字列、つまり「"(ダブルクオーテーション)」で囲んだ複数の文字は、メモリに保存されているのでしょうか。 また、アドレスは有るのでしょうか。

  • 文字列に含まれているダブルクォーテーション( ")を置換する

    文字列に含まれているダブルクォーテーションを除きたいのですが、これをSubstitute関数で置換しようとしてもうまくいきません。ダブルクォーテーションが文字列を指定するために使われるせいだと思うのですが、"を文字列として指定する方法はあるのでしょうか? よろしくお願いします。

  • 数値 1 を文字列"01"に変換したい

    初心者です。教えて頂けますか? ある関数から出てきた配列数からファイル名を指定したいのですが、 数値 1 を文字列"01"に変換するにはどの様にすれば良いでしょうか? よろしくおねがいします。 $array = hoge(); $count = count($array); $countString = $count;//<-ここでどのようにすれば良いでしょうか? $fileName = 'hogehoge'.$countString.'.zip';

    • 締切済み
    • PHP
  • 数値でも文字列でもない? 【Excel】

    シート内の値はCSV形式のものをコピーしたもので、文字列の表示(左詰め)になっています。 因みにセル間の足し算や引き算はできます。 しかし 数値の最大値を計算しようと思い MAX関数にて計算しても”0”の表示 文字列なのかと思い MAXA関数にて計算しても”0”の表示 関数(その他SUMやCOUNTA)での計算ができません。 そこで質問ですが、 この場合のセルの表示形式はどうなっているのでしょうか? また計算する方法を教えて下さい。 お願いします。<(_ _)>

専門家に質問してみよう