Ir ao conteúdo

EXTRAIR SOMENTE Nºs DE CÉLULA EXCEL


LAROZA

Posts recomendados

Postado

Caros

Existe alguma função no excel 2003 que possibilita a extração de somente os números de uma sequência aleatória alfanumérica contida em uma ou mais células?

Grato!

  • Membro VIP
Postado

Boa noite LAROZA

Esta fórmula retorna só só números de uma célula com números e textos.

=SE(E(CÓDIGO(A2)>=48;CÓDIGO(A2)<=57);A2;"")

e esta fórmula retornar só texto: =SE(E(CÓDIGO(A2)>=48;CÓDIGO(A2)<=57);"";A2)

Dê retorno

Abraços

Postado

Caro Patropi, Boa Noite.

Qual seria o resultado desta fórmula se na célula A2 tivesse abc123def45ghi6789jklmn0 ?

Tentei aqui e não obtive o resultado esperado.

Acho que cometí algum engano.

Estava esperando receber 1234567890 como resultado.

  • Membro VIP
Postado

Boa noite Mazzaropi

Falha minha eu entendi errado o que ele queria

Estas fórmulas na verdade servem para separar números ou texto, mas funciona assim: Por exemplo se na coluna A tem linha com números e outras linhas com texto, na coluna B você coloca uma das fórmulas e ela copia ou só o texto ou só o número , conforme a fórmula que você optar.

Abraços

Postado
Boa noite LAROZA

Esta fórmula retorna só só números de uma célula com números e textos.

=SE(E(CÓDIGO(A2)>=48;CÓDIGO(A2)<=57);A2;"")

e esta fórmula retornar só texto: =SE(E(CÓDIGO(A2)>=48;CÓDIGO(A2)<=57);"";A2)

Dê retorno

Abraços

Caro Patropi

Grato pela Ajuda, porém o resultado que necessito é aquela citado pelo Mazzaropi, ou seja, "A2 = AP 11 - RESID. DELL PIANO - BL. A" o resultado obtido pela fórmula em B2 seria "11".

Valeu!

Postado

Caros

Resolvido através do VBA:

Function LetterOut(rng As Range)

Dim Ret As String

Dim i As Integer

For i = 1 To Len(rng)

If Asc(Mid(rng.Value, i, 1)) >= 48 And Asc(Mid(rng.Value, i, 1)) <= 58 Then

Ret = Ret & Mid(rng.Value, i, 1)

End If

Next i

LetterOut = Ret

End Function

Valeu!

  • Membro VIP
Postado

Boa tarde Laroza

Se você tivesse colocado o texto

"A2 = AP 11 - RESID. DELL PIANO - BL. A" o resultado obtido pela fórmula em B2 seria "11".,

na tua primeira postagem eu teria entendido o que você queria e teria dado a fórmula certa. Mas aí vai a fórmula:

=EXT.TEXTO(A2;CORRESP(VERDADEIRO;ÉNÚM(1*EXT.TEXTO(A2;LIN($1:$100);1));0);3)

Como é uma fórmula matriacial, em vez de ENTER, dê CTRL+SHIFT+ENTER

Abraços

  • 2 semanas depois...

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...