Excel (一般機能)

Excelの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10 Home : Excel 2016)
値の一部を抽出する方法
投稿日時: 23/03/09 20:55:50
投稿者: yurappy

お世話になります。
値の中から特定の部分を抽出できないかと悩んでおります。
 
値の例ですが、
 
  商品名ABC[赤色][12345]
  商品名イロハ[234567]青色
  商品名あいうえお[緑][3456789-0]サイズM
 
の様に法則性は無くて、この値の中に含まれている [] 囲まれた
数字と ー の部分のみ抽出したいのですが、この様な事は可能でしょうか?
 
数字の文字数は一定でなく、 - も含んでいる場合と含んでいない場合があります。
また、[緑][3456789-0]の様に2つならんでいる場合など、補足性がありません。
 
 
現在、毎日時間をかけて目視と手作業で行っているので関数などで抽出できればと
悩んでおります。
 
何か良い方法がございましたら、ご教授をお願いいたします。
 
よろしくお願い申し上げます。

回答
投稿日時: 23/03/09 21:41:10
投稿者: 半平太

B1セル =IFERROR(TRIM(LEFT(SUBSTITUTE(MID(A1,LOOKUP(99,FIND("["&{0,1,2,3,4,5,6,7,8,9},A1))+1,99),"]",REPT(" ",99)),99)),"")
 
下にコピー
 
<結果図>

行  ___________________A___________________  ____B____
 1  商品名ABC[赤色][12345]                       12345
 2  商品名イロハ[234567]青色                    234567
 3  商品名あいうえお[緑][3456789-0]サイズM   3456789-0
 4  商品名あいうえお[緑][0456789-0]サイズM   0456789-0
 5                                                    

投稿日時: 23/03/10 08:32:30
投稿者: yurappy

半平太さま
 
お世話になります。
ご指導ありがとうございます。
 
思うように抽出ができました。 びっくりいたしました。
 
難しくて、どうなっているのかよく理解できてないのですが勉強してみます。
 
 
たいへん助かって、とても有り難いです。
ありがとうございました。
 
また困った時には助けてください。
 
ありがとうございました。