Excel でテキスト文字列を解析する

Excel でテキスト文字列を解析する

Excel セルに次のテキスト文字列があり、「%」記号を使用して値を取得する必要があります。FIND、MID、LEN、SUBSTITUTE などを使用していくつかの方法を試しましたが、まだ解決策が見つかりません。

99.3SN .7CU 1% LV-1000 ON TAPE             (I need "1%")         
96.5SN 3AG .5CU .5% LV1000 SPECIAL SHAPE   (I need ".5%")      
96.5SN 3AG .5CU .5% LV1000 SPECIAL SHAPE   (I need ".5%")
96.5SN 3.5AG .75-1% LV-1000 ON TRAY        (I need ".75-1%")
92.5PB 5SN 2.5AG .75% LV-1000              (I need ".75%")

私を正しい方向に導くためのご助力をいただければ幸いです。

答え1

インストール後、簡単な数式で実現できます正規表現アドイン:

=RegExFind(A1,"[-.0-9]*%")

ここに画像の説明を入力してください

答え2

「CU」または「AG」の後にスペースがあり、%
必要なのはスペースの後のデータを%

以下は、セルごとに1つの数式のみを使用してこれを段階的に実行する方法を示しています。これは1つの数式にまとめることもできますが、誰かがフォローしたり変更したりするにはこれが簡単だと思います。

データは A1、A2、... にあると想定します。

C1の場合:

  • =+IFERROR(FIND("AG",A1),FIND("CU",A1))
    これにより、AGまたはCUの位置が取得されます

D1の場合:

  • =+FIND(" ",A1,1+C1)
    これは、前に見つかった AG または CU を過ぎたスペースを検索して、スペースの位置を取得します。

E1の場合:

  • =+FIND("%",A1)
    これは%を見つけます

F1では:

  • =+MID(A1,D1+1,E1-D1)
    これは、スペースの位置と%の位置を使用してデータを抽出します。

関連情報