- ベストアンサー
エクセルでの関数?について
お世話になります。 エクセルでB列の数値の中から例えば“A”だったら“1”、“B”だったら“2”という風に1,2をC列に入れていきたいのですが、簡単にできる方法はありますか?
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
「DataBase」という名前のシートのA列に型番、B列にグループを入れたとします。 > ただ、1グループに型番は複数存在してしまうのですが 1つの型番に複数のグループがないのですよね。とりあえずB列にも全部グループ名を入れてください。 その上で、セルB1に型番を入力した場合、セルC1に相当するグループ名を入れたいのであれば、C1に =IF(ISNA(VLOOKUP(B1,DataBase!A:B,2,FALSE)),"",VLOOKUP(B1,DataBase!A:B,2,FALSE)) を入力すればOKです。で、できた式を下へドラッグ
その他の回答 (2)
- maruru01
- ベストアンサー率51% (1179/2272)
こんにちは。maruru01です。 パターンの総数や規則性によって難易度は異なります。 質問欄の例のように2種類しかないなら、 =IF(B1="A",1,IF(B1="B",2,"")) のようにIFを入れ子にして出来ます。 しかし、入れ子は7個までなので、パターンが多いと出来ません。 その場合は、どこかに対応表を作成しておいて、VLOOKUP関数で引っ張ってくるのが分かりやすいと思います。 いずれにせよ、パターンの詳細(出来れば全パターン)を提示していただいた方がいいかと思います。
お礼
早速のご回答ありがとうございます。 全パターンは多すぎて提示はムリです。 対応表はできています。別の売上げのシートには型番のみの表示となっており、そこに新しく列を挿入して対応表のとおり製品グループを入れていきたいのです。ただ、1グループに型番は複数存在してしまうのですが、。。。こんな説明でお分かりいただけますでしょうか?
- matsu_jun
- ベストアンサー率55% (146/265)
CODE(B1) で、セルB1の先頭の文字(例えば、"Test" と入っていたら、"T") を示す数値コードが数字の形で返されます。 数値コードは、大文字の「A」が「65」、「B」が「66」、 以下1ずつ加算された値になりますので、 =CODE(B1)-64 とすれば、セルB1の値が「A」なら1、「B」なら2・・・ と変換できます。
お礼
早速のご回答ありがとうございます。 1,2というのは例であって、実際は商品の型番と製品グループ名になります。説明がいたらなくて申し訳ありません。
お礼
ありがとうございました。