Extraer numero

Que tal Fejoal: Mi problema es que tengo en una misma celda las direcciones incluidos los números, y necesito separar en otra celda dichos números, quedando en una celda la calle y en otra los números de calle, escalera, etc.
Un saludo.

1 respuesta

Respuesta
1
Para usar alguna función estándar que resuelva el problema, necesitarías algún identificador dentro del texto que permita dividirlo.
Como estimo que no lo tendrás, armé una UDF (función personalizada) que analiza carácter por carácter hasta que encuentra un número y allí muestra el nombre de la calle.
Luego si, una fórmula común podrá extraer el número.
Si estás de acuerdo, activa el editor de Visual Basic (presiona Alt+F11), inserta un nuevo módulo ("Insertar", "´Modulo") y pega el siguiente código:
Public Function Solocalle(ByVal target As Range)
Dim Calle, Carac
Direcc = Trim(target.Value)
For CH = 1 To Len(Direcc)
Carac = Mid(Direcc, CH, 1)
AAA = Val(Carac)
If Val(Carac) = 0 And Carac <> "0" Then
Calle = Calle & Carac
Else
Exit For
End If
Next CH
Solocalle = Calle
End Function
Cierra el editor de Visual basic y graba el archivo.
Ahora tendrás una función que, sobre una celda (B5, por ejemplo), devolverá el nombre de la calle:
=solocalle(B5)
Al lado de donde colocaste esta fórmula (C5), pon la siguiente:
=ESPACIOS(DERECHA(B5;LARGO(B5)-LARGO(C5)))
Y obtendrás el número y el resto de los datos.
Esto debería resolver tu pregunta. Si así fuera, ya sabes...
Un abrazo!
Fernando

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas