• 締切済み

最後の文字だけを抜き出したい

Excelで、以下のように'/'で区切られた文字列があります。 /AAAAA/BBB /CCC /DDDD/EEE/F これから以下のように最後の文字のみを抽出したいのですが、どうすれば可能でしょうか? BBB CCC F よろしくお願いします。

みんなの回答

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.5

こんばんは! すでに良い回答が出ていますが・・・ 参考程度で! A1セルからデータがあり、B列に表示するとします。 B1セルに =IF(ISNUMBER(FIND("/",A1)),MID(A1,FIND("#",SUBSTITUTE(A1,"/","#",LEN(A1)-LEN(SUBSTITUTE(A1,"/",""))))+1,LEN(A1)),"") という数式を入れオートフィルで下へコピーではどうでしょうか?m(__)m

回答No.4

VBAはお使いになれますか? 下記のような関数を作成されると楽です。 Function strSplitRev(strData As String, strSeparator As String) As String Dim lngPos As Long strSplitRev = "" If strData <> "" Then lngPos = InStrRev(strData, strSeparator, -1) If 0 < lngPos Then strSplitRev = Right(strData, Len(strData) - lngPos) End If End If End Function

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.3

最後の/の後の抜き出す文字の文字数が最大20文字までなら(それ以上の場合は適宜100などの大きい数字にしてください)以下のような数式で表示できます。 =TRIM(RIGHT(SUBSTITUTE(A1,"/",REPT(" ",20)),20))

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.2

参考として配列数式という特殊な仕込みを使うと =MID(A1,MAX(IF(MID("/"&A1,ROW($A$1:$A$99),1)="/",ROW($A$1:$A$99))),99) と記入し,コントロールキーとシフトキーを押しながらEnterで入力する といった方法もあります。 こちらはエクセルのふつーの関数の使い方じゃないんで,他の人にもブックを引き継いで今後も使い続けていくような可能性がある場合は,使わないでください。

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

=REPLACE("/"&A1,1,FIND("\\\",SUBSTITUTE("/"&A1,"/","\\\",1+LEN(A1)-LEN(SUBSTITUTE(A1,"/","")))),"") など。 "/"を含まない文字列(空白を含む)が記入されていてもエラーにならない手当てをしています。

関連するQ&A

専門家に質問してみよう