Excelのセルで文中の特定の文字列の後に数値を抽出するにはどうすればいいですか?


0

抽出したい 文字列 "ABS"の直後の数値(大文字と小文字を区別) Excelテーブルのセル内のテキストの大部分の中。

すべてのセルに探している文字列が含まれているとは限らないので、フィルタが必要です。

セルの内容は次のようになります。

Loremイプサムdolor座ってamet、conittetur adipiscing elit。モルビアンティ   mi、laoreet nec tristique et、duiのソーダ。前庭のウラムコパー   nibhオークションlaoreet ornare nisi posuereで8月。 Aliquam convallis   nislオークションモーリス・ファレトラ・フォーシバス。ヌラムヌラドロール、varius   viverra facilisis nec、拷問を受けたビベラ。整数sollicitudin、エリート   interdum、sapien justo、luctus justo、id、varis nisi、maurisの中で   イプサムで。 Vivamus tincidunt neque sed felisは、一時的な天体を蓄積します。

ABS:1.5、ADS:2.5、SR:11

ペレンテスクの住人morbi tristique senectus et netus et malesuada   名声AC turpisエジェスタ。整数前庭フェリスらロレム前庭   痴女。ヌラ不法、マグナヴェルアキュサンオナレ、オーグクォーム   ornare justo、履歴書turpis orci quis nibh。 Nullam履歴書   et ligula(商品名) Etiam et luctus dui。

問題は、内容が手動で入力されるためです。構造は多少異なる場合があります。

ABS:1.5(ABSの後のスペース)

または

ABSは1.5です(コロンの代わりに 'is')

または

ABS = 1.5(コロンの代わりに '=')

または

ABS 1.5(コロンのないテキストの直後の数値)

....等

数値は、0.5の増分で0〜8.5の間である(すなわち、0、0.5、1.0、... 7.5、8.0、8.5)。

私はleft()とfind()関数の組み合わせを試しましたが、文字列 "ABS"を見つけた後に単に数字を抽出する方法を知りません。誰かが私を助けてくれるか、または私をある方向に向けることができれば、私はそれを大いに感謝します。ありがとうございます。


セル内のテキスト文字列の最大数はいくつですか(ある場合)。
chuff

0.5の増分で0〜8.5、(0、0.5、1.0、... 7.5、8.0、8.5)

回答:


2

この式は ABS....その後の最初の数値を見つけ、それからそこから始まる数を取ります(最大5文字)。

=LOOKUP(10^10,MID(A1,MIN(FIND({1,2,3,4,5,6,7,8,9,0},A1&1234567890,FIND("ABS",A1))),{1,2,3,4,5})+0)

A1のデータを仮定

数が5文字より長くなる可能性がある場合は、 {1,2,3,4,5}

ABSが見つからない場合にエラーを回避したい場合はIFERROR関数で折り返してみてください

=IFERROR(LOOKUP(10^10,MID(A1,MIN(FIND({1,2,3,4,5,6,7,8,9,0},A1&1234567890,FIND("ABS",A1))),{1,2,3,4,5})+0),"")


どうもありがとうございます!それはうまくいきました、しかし、ABSが見つからないときに関数が単にnull(空白)を表示する方法はありますか?

Excel 2007以降をお持ちの場合は、それをIFERROR関数で囲むことができます。返信を編集しました。
barry houdini

とても役に立った探しているテキストがすべて小文字、最初の大文字、それから小文字、またはすべての大文字であるというバリエーションがあったので、私はそれをFIND(大文字と小文字を区別する)の代わりにSEARCHを使うように修正しました。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.