- ベストアンサー
セル内の範囲の文字列を関数で抽出する方法
- エクセルの関数を使用してセル内の特定の範囲の文字列を抽出する方法について教えてください。
- また、抽出した文字列を別のセルに表示する際に、特定の文字列を変更したい場合も教えてください。
- 試行錯誤した結果、うまくいかなかったので、助けていただけるとありがたいです。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
もし、 (文字列1)文字列2(文字列3) という形式にはなっていない文字列が入力されていた場合でも、エラーとはならない様にするのでしたら、次の様な関数となります。 =IF(COUNTIF(A1,"(*?)*?(*?)"),REPLACE(LEFT(A1,FIND(")",A1,FIND(")",A1)+1)-1),1,FIND(")",A1),)&"【"&A3&"】",IF(A1="","","[変換できません]"))
その他の回答 (2)
- emaxemax
- ベストアンサー率35% (44/124)
Ano1です。 間違ってました。 > A2セル:文字列2だけを抜き出したいです。 =MID(A1,FIND(")",A1,1)+1,(FIND("(",A1,FIND(")",A1,1))-(FIND(")",A1,1)+1))) > 文字列2を抽出する際に(文字列3)の部分を、A3セルに入っている文字列に変更したいのですが、 =MID(A1,FIND(")",A1,1)+1,(FIND("(",A1,FIND(")",A1,1))-(FIND(")",A1,1)+1)))&"【"&A3&"】"
お礼
emaxemax 様 すごいです!できました!いろんなサイト見ながらちょこちょこいじっていて全くできなくて困っていました。 本当にありがとうございます。ありがとうございました。 また宜しくお願い致します。
- emaxemax
- ベストアンサー率35% (44/124)
> A2セル:文字列2だけを抜き出したいです。 =MID(A1,A8,(FIND("(",A1,FIND(")",A1,1))-(FIND(")",A1,1)+1))) > 文字列2を抽出する際に(文字列3)の部分を、A3セルに入っている文字列に変更したいのですが、 =MID(A1,A8,(FIND("(",A1,FIND(")",A1,1))-(FIND(")",A1,1)+1)))&"【"&A3&"】" これでどうでしょう?
お礼
emaxemax様 すみません、先日ご教示いただきました件でこちらにお礼を入れ忘れてしまい大変に失礼いたしました。 また、上記ご教示いただきました内容にて初めのうちできていたのですが、それ以外の文字列が入った場合にFALSEとなってしまい、ベストアンサーの方の方法で解決できたため、心苦しかったのですが、選ばせていただくことができずすみませんでした。 また、見かけた際は何卒宜しくお願い致します。 おそくなりまして失礼いたしました。
お礼
kagakusuki様 すみません、先日ご教示いただきました件でお礼を入れ忘れてしまい大変に失礼いたしました。 ご教示いただきましたことでやりたいことができまして、本当にありがとうございました。遅くなってしまいすみませんでした。