株式会社ブリッジワン > blog > web > EXCEL小技集:特定の文字列と文字列の間の値を抽出する方法

EXCEL小技集:特定の文字列と文字列の間の値を抽出する方法

ECサイトを運営していると大量の商品データをCSVやEXCELファイルで管理している会社様も多いのではないでしょうか。

そして、サイトリニューアルや仕様変更に伴って時々おこる命名規則の変更。ブリッジワンでも度々生じています。

 

弊社の製品は製品の性質上(サイズバリエーションが多い)、商品名に商品のサイズを入れているのですが、その商品名からサイズの値だけを抽出したいというケースがありました。

言い換えると「特定の文字列と文字列の間の値を抽出したい」というケースです。

覚え書きの意味も含めてご紹介致します。

やりたい事

すでに商品名の一部として入力してしまった高さ、幅、厚みの3つの値をそれぞれ抽出したい

excel

使用する関数

MID関数FIND関数を使います。それぞれの関数に関して詳しくはgoogle先生まで・・・

まとめるとこうなります

=MID(A2,FIND(“開始文字列”,A2)+開始文字列の文字数,FIND(“終了文字列”,A2)

-FIND(“開始文字列”,A2)-終了文字列の文字数)

少し分かりづらいのでB2(幅の値)の数式を例に解説です。

excel2

赤:抽出するセル(A2)を入力

青:A2のセルの”幅”という文字左から検索していき、次の文字(+1)から開始。

検索する文字列が2文字の場合は+2となります。

緑:終了文字の”×高”までの文字数から、抽出開始文字の”幅”までの文字数を引くと、その間の文字数となります。”×厚”は抽出文字から除外したいので-2とします。

 

以上で特定の文字列と文字列の間の値を抽出する事が可能です。

コピペで使えるように、下記にそれぞれセルの数式を載せておきますね。

キャプチャ

B2=MID(A2,FIND(“幅”,A2)+1,FIND(“×高”,A2)-FIND(“幅”,A2)-1)

C2=MID(A2,FIND(“高”,A2)+1,FIND(“×厚”,A2)-FIND(“高”,A2)-1)

D2=MID(A2,FIND(“×厚”,A2)+2,FIND(“mm”,A2)-FIND(“×厚”,A2)-2)