
Exemplo:
*AB|USA|California|los angles_backup
*AB|USA|California_backup
Perguntas: Preciso da palavra após o último pipe (|). No primeiro exemplo, preciso apenas dos ângulos Los e no segundo exemplo, preciso apenas da Califórnia.
Responder1
Usar
Function GetLastPartAfterPipe(str As String) As String
tmp = Split(str, "|")
GetLastPartAfterPipe = tmp(UBound(tmp))
End Function
e B1=GetLastPartAfterPipe(A1)
Responder2
Aqui está uma solução usando apenas funções integradas:
- primeiro calcule a localização do último
|
:
=MAX(IF(MID(A1,ROW(OFFSET(A1,1,1,LEN(A1))),1)="|",ROW(OFFSET(A1,1,1,LEN(A1))),""))
Esta é uma fórmula de matriz, então pressione CTRL+SHIFT+ENTER depois de digitá-la - segundo você pode obter o texto desejado:
=MID(A1,B1+1,LEN(A1)-B1)
Responder3
Como existe um '_backup' no final de tudo, talvez seja melhor fazer isso em duas etapas em vez de criar uma única fórmula muito longa.
Etapa um B
para retirar os dados após o último canal:
=RIGHT(A1,LEN(A1)-FIND("@",SUBSTITUTE(A1,"|","@",LEN(A1)-LEN(SUBSTITUTE(A1,"|",""))),1))
Em seguida, passo dois em C
:
=MID(B1,1,FIND("_",B1)-1)
Responder4
=LEFT(TRIM(RIGHT(SUBSTITUTE(A1,"|",REPT(" ",99)),99)),FIND("_",TRIM(RIGHT(SUBSTITUTE(A1,"|",REPT(" ",99)),99)))-1)
TRIM(RIGHT(SUBSTITUTE(A1,"|",REPT(" ",99)),99))
retornará a última substring separada por pipe.LEFT(last_substring,FIND("_", last_substring)-1)
em seguida, retorna a parte dessa substring antes do sublinhado.