• ベストアンサー

文字コードで数字を表すには?エクセル

エクセルで数字と文字を区別する際に例えば以下のようにすれば良いと伺いました。 たとえばA1="11 3DE"のとき N((MID(A1,5,1))>"9")=1 しかしここで、数字ではなく文字コードの9を表すために”9”を用いると書かれていましたが、よくわかりません。文字コードを知るため、Unicode(9),Code(9)などしてみると「57」という数字がでてきますし、>"9"部分が数字と文字を区別できる理由がわかりません。 ご存知の方がいらしましたら、ご教授よろしくお願いいたします。

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

  • ベストアンサー
  • SI299792
  • ベストアンサー率48% (714/1472)
回答No.3

「>"9"」と「>9」の違いは Excel ではどんな数字でも文字より小さいです。 =9<"9" はTRUE =9<""  もTRUEになります。 当然 =9="9" はFALSE になります。 MID で取り出した場合、文字のままなので、比較するときは""をつけて文字にする必要があります。 文字の大小関係ですが、文字コードで比較します。左から順に比較して行きます。従って、 "11"<"2"になります。 このように数字と文字では比較方法が違うので、区別する必要があります。 B1に=IF(A1>C1,">",IF(A1=C1,"=","<")) を入れて、A1とC1にいろいろ入れてみればいいです。

bitamin123456
質問者

お礼

なるほどですね。少しわからないところがありますが、試しにIf関数で色々試してみたいと思います。 ありがとうございました!

その他の回答 (2)

  • SI299792
  • ベストアンサー率48% (714/1472)
回答No.2

MID(A1,5,1)ということは、5文字目が数字かどうかということでしょうか。 それはどこの情報ですか? =N((MID(A1,5,1))>"9")=1 これでは数字かどうかの判断はできません。 11 3DE TURE 11 36E FALSE 一見5文字目が数字かどうか判断しているように見えますが、 11 3%E FALSE となり、数字より小さい文字なら、FALSE になってしまします。 5文字目が数字かどうか知りたいなら、 =ISERROR(MID(A1,5,1)+0) 数字ならFALSE 又は、 =AND(MID(A1,5,1)>="0",MID(A1,5,1)<="9") 数字ならTRUE にすべきです。

bitamin123456
質問者

お礼

回答ありがとうございました。どのようにすべきかまでご教授くださりありがとうございました。 ですが質問の仕方が悪かったようです。 「>"9"」と「>9」の違いは何でしょうか。文字でも大小関係があることがあまり理解できませんでした。もし時間があればよろしくお願いいたします。

  • HohoPapa
  • ベストアンサー率65% (454/690)
回答No.1

>エクセルで数字と文字を区別する際に 疑問点が何なのかがよくわかりません。 A1セルに9が埋まっているときに それが文字の9なのか、数値の9なのかを 文字コードで区別することができるか? という質問であれば そもそも、埋まっている値は 2進表記なら:00111001 10進表記なら:57 16進表記なら:39 の文字コードをもつ文字(とりもなおさず9)であって 表示形式(文字タイプ、数値タイプ、標準)で 文字コードが変化するわけでありません。 >文字コードの9 文字コードが10進表記で9の文字は 文字コードを 2進表記なら:00001001 16進表記なら:09 と表現できますが、数字を含む文字ではなく、 Horizontal Tabulation(水平タブ)です。 一般には単にtabと呼びます。また制御文字です。 セルに文字コードを使って文字を埋めたいのであれば 例えばHを埋めるなら =CHAR(72) 例えば9を埋めるなら =CHAR(57)  例えば23を埋めたいなら =CHAR(50)*10+CHAR(51) となります。 文字コードと文字の対応は 「文字コード表」で検索すればいろいろヒットします。 例えば、 http://charset.7jp.net/sjis.html です。 もう一度疑問点を整理し質問のし直しをすれば 多くの方からコメントを得られるだろうと思います。

関連するQ&A

  • エクセルで囲い文字を使うためにコードを追加したい

    エクセルでは21以上の数字に○の囲みをすることができないため、色々と調べましたが、結局Unicodeを追加すればOKというようなサイトをみて、コードは入手したのですが、このコードをどう扱えばいいのかわかりません。 コードを追加して、その文字を表示させる方法をおしえてください。 例 記号    Unicode  JIS X 0213  文字参照 21     U+3251   1-8-33     &#x3251;                       ㉑                         よろしくお願いいたします。 OS XP エクセル2003 ATOK2009

  • Excel でASCII文字列を16進コードへ変換

    Excel でA1セルに、 A1セル:”1234” という半角英字の文字列が入力されています。 これをすべてASCIIコードへ変換したいのですが、 何か方法はありますでしょうか? 結果は、 A2セル:”49505152” となることを想定しています。 私なりに調べたのですが、 =CODE(MID(A1,1,1)) & CODE(MID(A1,2,1)) & CODE(MID(A1,3,1)) & CODE(MID(A1,4,1)) なら、期待した結果になっておりましたが、 文字数が多い場合にかなり不効率でした。 他の方法をご教授ください。

  • エクセルとアクセスでローマ数字の大文字・小文字の区別ができない。

     よろしくお願いいたします。  ExcelあるいはAccessにおいて,ローマ数字の大文字と小文字を区別したいと考えていますがうまくいきません。  例えば,エクセルにおいて A1セルに「ⅰ」が入力してあって   =IF(A1="I","壱",IF(A1="ⅰ","一")) という式をA2セルに入れると,「壱」という戻り値になります。アクセスでも構文が違うだけの同意の関数を使用しても同様の結果になります。つまり,大文字と小文字を区別していないということになると思います。原因と回避する方法を教えていただけたら幸いです。

  • TeraPadの文字コード

    TeraPadの文字コードについて教えてください。 1. TeraPadで扱える文字コードは Shift-JIS、JIS、EUC、Unicode、UTF-8、UTF-8N の6種類あるようですが、このEUCとEUC-JPは 同じものですか? 2. Shift-JISで保存すると、TeraPadの下の部分に 表示される文字コードがSJISとなります。 これはShift-JISのことですか? 3. 短い文章では文字コードを誤認識する場合も あるようですが、どうしたら正しく認識 させられますか? 指定した文字コードで保存できず困っています。

  • エクセルで英数字の文字列から数字を抽出

    エクセルで英数字を含む文字列から数字を抽出く =1*MID(A1,MATCH(TRUE,ISNUMBER(1*MID(A1,ROW($1:$9),1)),0),COUNT(1*MID(A1,ROW($1:$9),1))) 小数点にも対応させるにはどうしたら良いでしょうか。 「AA0.45」→0.45 「0.65BB」→0.65 「CC0.85CC」→0.85 http://office.microsoft.com/ja-jp/excel-help/HA001154901.aspx を参照しました

  • エクセルで数字を入れると決まった文字が出るようにしたい

    エクセルで、数字を入れると決まった文字が出るようにしたいです。 例えばA1に1000を入れるとB1にさくら、1200をいれるとたんぽぽ、というような設定は出来ますか?

  • Excelで数字だけ抽出

     Excelを最近になって職場で使い始めました。 初心者ですのでよろしくお願いします。  「パソコン(25%)」,「プリンタ(55%)」のような列の中から %の前の数字の部分だけを抽出したいのですがうまくできません。 MIDやLEFTだと、%の前の部分の文字数が同じでないといけないし、、。  今は隣の列に数字だけを手入力して、その数値を使って 計算しているのですが面倒なので、なにかいい手段があれば 教えてください。    

  • 関数で文字列と数字の組合せから数字のみを取り出す

    お世話になります。 文字列+数字から数字のみを取り出す関数はエクセル技道場などで紹介されている =MID(A1,MIN(FIND({0,1,2,3,4,5,6,7,8,9},A1&1234567890)),LEN(A1)*10-SUM(LEN(SUBSTITUTE(A1,{0,1,2,3,4,5,6,7,8,9},))))で可能ですが、たとえばSSPAS2.5などのように小数点を含む数字の場合結果は2.となります。正しい結果を得るためにはどのような関数を使えばいいのでしょうか。数字には整数、少数点を含むものが混在しているとします。 どなたかよろしくお願いします。

  • エクセルで、MID関数で抽出した文字を独立させたい

    エクセル初心者のため、お見苦しい文章で申し訳ありません。 WORDに入力されたアンケート結果をEXCELに移した際に、 例えば1つのセルにある「A:50% B:25% C:25%」という文字列を、 MID関数を使ってそれぞれ別のセルに抽出しました。 (それぞれ、"=MID(A2,3,3)"、"=MID(A2,10,3)"、 "=MID(A2,17,3)"という感じです) 設問がいくつもあるので、 その関数を十字でコピーしたほうが楽かと思いまして・・・ ところがそもそもグラフを作りたくてエクセルに移したのですが、 「50%」というのはただの関数の結果であって、 数字どおりのグラフが作れないと気づきました。 これを、「50%」という文字列だと 認識させてグラフを作る方法は何かあるでしょうか? それともやっぱりめんどくさがらずに、 1から打ち込んだほうが早いのでしょうか・・。 わかりづらい質問で申し訳ありません。 よろしくお願いいたします。

  • エクセルで割合に対して数字を出す方法教えてください

    エクセルで割合に対して数字を出す方法があれば教えてください。 以下の様にエクセルでAにそれぞれのパーセンテージを指定して、その後C-1に数字を入れた際に、その割合に合う数字をC-2やC-3、C-4毎で確認したいのですが、出来るのでしょうか? C-1にのみ数字を入れるという前提で、C-2からC-6までが数字で埋まるような数式があるのが理想です。 どなたかご教授頂ければ幸いです。   A    B   C 1 30%  ●● 2 20%  ▲▲ 3 10%  ■■ 4 10%  ×× 5 20%  ◆◆ 6 10%  ※※

専門家に質問してみよう