• ベストアンサー

文字列の抜き出しとデータ表示について

EXCELでA列に次のような文章が入っています。 A1 山田●●<>101<>神奈川県横浜市神奈川区…<>電話 045… A2 上田■■■<>102<>神奈川県横浜市鶴見区…<>電話 045… (以下略) この中で <>と<> で囲まれた2つ目の文字列(半角数字101や102)をB列にコピーする方法を教えて頂けませんか? また、コピーした文字列(半角数字)に対応してC列にデータを表示できますか? C列に表示したいデータは以下のようなものです。 B列が 101 なら 1年ピッチャー B列が 102 なら 1年キャッチャー B列が 103 なら 1年ファースト (略) B列が 201 なら 2年ピッチャー (略) B列が 309 なら 3年ライト 可能ならB列に表示せず直接C列にデータ表示してもOKです。 どうぞ宜しくお願いします。

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

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

<>の後は3桁に決まっているのか 決まっているならFIND関数で<>を見つけ、見つかったところの2桁目から3桁採ればよい。これだけで式の組み方わかるかな。 =MID(A1,FIND("<>",A1)+2,3) ーー コードから対応文字列を引くのは、VLOOKUP関数がよかろう。CHOODEなどでは、式の中に文字列を書き込むので、場合の数が多いと式が多くなる。 表 Sheet2 A列  B列 101 1年ピッチャー 102 1年ピッチャー 103 1年ピッチャー ・・・・ =VLOOKUP(B1*1,Sheet2!$A$1:$B$100,2,FALSE) B1*1 としているのは、Sheet2のA列にあわて数値化しているため。

luxury-9
質問者

お礼

御礼が非常に遅くなり申し訳ありません。 教えていただいた事を参考に、何とか思うようなものが出来ました。 もっと勉強したいと思いますので、わからない時はまた宜しくご指導お願いします。

その他の回答 (2)

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.2

=LEFT(A1,1)&"年"&CHOOSE(RIGHT(A1,1)*1,"ピッチャー","キャッチャー","ファースト","セカンド","ショート","サード","レフト","センター","ライト") または Z1:Z9に "ピッチャー" "キャッチャー" "ファースト" "セカンド" "ショート" "サード" "レフト" "センター" "ライト" として =LEFT(A1,1)&"年"&INDEX($Z$1:$Z$9,RIGHT(A1,1)*1,1)

luxury-9
質問者

お礼

御礼が非常に遅くなり申し訳ありません。 教えていただいた事を参考に、何とか思うようなものが出来ました。 もっと勉強したいと思いますので、わからない時はまた宜しくご指導お願いします。

  • wisemac21
  • ベストアンサー率39% (171/429)
回答No.1

C1に =CHOOSE(LEFT(MID(A1,FIND(">",A1)+1,3),1),"1年","2年","3年")&CHOOSE(RIGHT(MID(A1,FIND(">",A1)+1,3),1),"ピッチャー","キャッチャー","ファースト","セカンド","サード","ショート","レフト","センタ","ライト")

luxury-9
質問者

お礼

御礼が非常に遅くなり申し訳ありません。 教えていただいた事を参考に、何とか思うようなものが出来ました。 もっと勉強したいと思いますので、わからない時はまた宜しくご指導お願いします。

関連するQ&A