2017-04-25 23 views
-1

このExcelセルA2の内容はUSD.EUR[IDEALPRO,CASH,EUR]です。Excelセル内のこの文字列から部分文字列を抽出します

Excel式を使用して、文字列の最後の部分から部分文字列EURを抽出したいとします。私が出てきた最も近い式は=RIGHT(A2,4)です。ただし、EUR]を返します。

部分文字列の抽出にはどのような式を使用できますか?

私はMS Excelが2013年

答えて

1

検索する文字列が長さが3 bytesの場合、簡単な数式が使用できます。しかし、それが変わるとどうなるでしょうか? F2があなたの文字列である

=MID(SUBSTITUTE(F2,",","#",LEN(F2)-LEN(SUBSTITUTE(F2,",",""))),FIND("#",SUBSTITUTE(F2,",","#",LEN(F2)-LEN(SUBSTITUTE(F2,",",""))))+1,FIND("]",SUBSTITUTE(F2,",","#",LEN(F2)-LEN(SUBSTITUTE(F2,",",""))))-FIND("#",SUBSTITUTE(F2,",","#",LEN(F2)-LEN(SUBSTITUTE(F2,",",""))))-1)

、以下試してみてください。この式は、最後のデリミタである",""]"の間の文字列を解除します。これは複雑すぎますが、それはあなたを助けるかもしれません。

0

あなたがMIDREVERSETEXT機能を組み合わせて使用​​することができます使用しています。

=REVERSETEXT(MID(REVERSETEXT(A1), 2, 3)) 

そうでない場合、長さはあなたが取得したい部分は不明である場合。その後、FIND関数を使用して、特定の単語の前にカンマを検索します。

=REVERSETEXT(MID(REVERSETEXT(A3), 2, FIND(",", REVERSETEXT(A3)) - 2)) 
+0

Excel 2013にReverseText()が存在しないようです。 – user3848207

+0

Excel 2013で 'ReverseText()'が利用可能です。 – Wanderer

+0

申し訳ありませんが、Excelに問題があります。私はあなたの答えをupvoteします。 – user3848207

1

私は自分の質問に答えます。それは動作するようにテストされています。

=SUBSTITUTE(RIGHT(A2,4),"]","") 

RIGHT(A2,4)戻りEUR]。その後、SUBSTITUTEを使用して]を削除してください。

+0

短い: '= LEFT(右(A2,4)、3)'。 – pnuts

関連する問題