Remova tudo à direita e à esquerda do ponto e vírgula

2

Eu tenho estas duas células:

35hz 24.5/jy;8243-9884;100093 and 
aslhz/45.77;94-224444;103944234

Estou tentando isolar o número entre os ponto e vírgula. Eu usei a função:

=RIGHT(A1, FIND(";",A1)-1)

mas remove mais do que o que está ao lado do ponto e vírgula. Há algo de errado com a fórmula?

    
por llyuuu 10.06.2016 / 02:29

4 respostas

3

Com dados em A1 , em B1 digite:

=TRIM(MID(SUBSTITUTE($A1,";",REPT(" ",999)),2*999-998,999))

EDIT # 1:

Transforme 2 em 1 para obter tudo antes do primeiro ; .
Faça o 2 em um 3 para obter tudo após o segundo ; .

    
por 10.06.2016 / 04:05
2

RIGHT(CELL,LEN) fornece caracteres LEN à direita, enquanto FIND retorna o primeiro ponto e vírgula.

Você precisa de algo assim:

A1 35hz 24.5/jy;8243-9884;100093
B1 =FIND(";",A1)
C1 =RIGHT(A1,LEN(A1)-B1)
D1 =FIND(";",C1)
E1 =LEFT(C1,D1-1)

Depois de ver como isso funciona, você pode combinar a fórmula em uma única célula.

Você deve ver o valor 8243-9884 em E1.

    
por 10.06.2016 / 02:49
2

Use o preenchimento em Flash do Excel (2013 e posterior): com o texto em uma coluna contígua, digite o primeiro resultado desejado e comece a digitar o segundo resultado desejado e veja o preenchimento em Flash para sugerir o resultado.

Olhe Ma, sem fórmulas!

Editar:

OFlashFilltambémpermitecorrigirfalhasnalógicadetectada.Nacapturadetelaabaixo,aslinhas6e7pegaminicialmenteaúltimapalavradacolunaC.Depoisdecorrigiralinha6atéasegundaúltimapalavra,alinha7seajustaautomaticamenteaessanovaregraemostra"is" em vez de "good". >

    
por 10.06.2016 / 04:43
1

Você pode fazer isso para obter o número do meio .

=MID(A1,(FIND(";",A1)+1),(FIND(";",A1,(FIND(";",A1)+1))-(FIND(";",A1)+1)))

MID lhe dá uma string começando em um determinado caractere, e de tamanho especificado. Encontramos o primeiro ";" usando FIND e use-o para o início.

Agora precisamos do comprimento, e para isso temos que encontrar o segundo ";" também, e fazemos isso novamente por FIND, mas começando na posição após o primeiro ";". Esta parte nos dá a posição do segundo ";":

FIND(";",A1,(FIND(";",A1)+1))

A partir disso, subtraímos a posição do primeiro ";" para obter o tamanho e combinar tudo na fórmula acima. Observe que, se sua célula não tiver pelo menos 2 ponto e vírgula, a fórmula retornará um erro.

Se você precisar do número último , precisará do segundo ";", para poder usar:

=RIGHT(A1,LEN(A1)-FIND(";",A1,(FIND(";",A1)+1)))

Para obter o número primeiro , o mais simples:

=LEFT(A1,FIND(";",A1)-1)
    
por 10.06.2016 / 07:46