• ベストアンサー

Excel2010:数値を自動的に変換したいです

お手数おかけいたしますがどなたか教えてくださいませんか。 <数値を自動的に変換したい> セルAにある「001」~「100」までの数字を、2ケタの特定の番号に変換して並び替えたいのです。 (例) 001→18、002→03、003→15、004→12、005→18、006→15、007→20など・・・です。 001~100までのものを2ケタの番号にグループわけしたいです。 何か良い方法がございましたら、よろしくお願い致します。

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

  • ベストアンサー
  • m_and_dmp
  • ベストアンサー率54% (987/1817)
回答No.2

シート上のどこかに変換テーブルを用意しておいて、Vlookup関数で抽出します。 たとえば、 =VLOOKUP(I21,E21:F121,2) E21~E121 に 001, 002, 003....と変換前数値が並んでいるとします。 F21~F121 にはそれらに対する変換後のコードを記述します。 上の式では、この変換テーブルから I21 に記述されている数値に相当する変換後のコードが抽出されます。 該当する数値がなければエラーになるので、そのようなケースが想定されるならエラーになったときの処置が必要です。 なお、001~100まで100個の数値ありますが、それを二桁のコードで表すということは、いくつかの数値は同じコードに分類されるということですね?

pommery508
質問者

お礼

この度は早速のご回答ありがとうございます。 少ない行数でVLOOKUPを使ってテストしてみたところうまくいきました。ありがとうございました。 >該当する数値がなければエラーになるので、そのようなケースが想定されるならエラーになったときの処置が必要です。 そうなのですね。1~100については、いつも全ての数字があるとは限らないです。というか必ずといっていいくらいすべての数字はないです。 >なお、001~100まで100個の数値ありますが、それを二桁のコードで表すということは、いくつかの数値は同じコードに分類されるということですね? おっしゃるとおりです。こちらは01~30までに分類します。

その他の回答 (1)

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.1

A列(?)にはどのような順で1から100までの数字が入力されていて、それをどのように並べ替えたいのか具体例をあげて説明してください。 ごく普通に操作するなら、3桁の数字と2桁の数字の変換表を作成し、3桁の数字をこの変換表からVLOOKUP関数で検索して2桁の数字に変換し、この列を基準に昇順に並べ替えるという操作になりますが、この方法ではダメなのでしょうか? 上記の回答がご希望の回答と違う場合は、そのような操作の目的を含めて、もう少し具体的にご希望の操作を説明してください。

pommery508
質問者

お礼

この度は早速のご回答ありがとうございます。 少ない行数でVLOOKUPを使ってテストしてみたところうまくいきました。ありがとうございました。 >ごく普通に操作するなら、3桁の数字と2桁の数字の変換表を作成し、3桁の数字をこの変換表からVLOOKUP関数で検索して2桁の数字に変換し、この列を基準に昇順に並べ替えるという操作になりますが、この方法ではダメなのでしょうか? A列にある1~100までの数字(ない番号もあります)を2ケタの数字(1~30くらいまでのグループ)へ変換したいということで、ご回答いただきましたようにしたらうまくいきました。 数を増やして改めてテストしてみます。本当にありがとうございました。

関連するQ&A