En realidad sí tenemos que utilizar DERECHA e IZQUIERDA, aunque en combinación con otras más: EXTRAE, LARGO, ENCONTRAR (o HALLAR) y opcionalmente, ESPACIOS, NOMPROPIO, MAYUSC y MINUSC. Excel es muy flexible al trabajar textos. Solo hay que saber pedirle las cosas.
Dividamos el siguiente nombre completo, el cual está en A2, en nombre, apellido paterno y apellido materno.
Alejandra Reyes Avendaño
Eliminemos también los espacios excedentes entre palabras. Estos espacios casi siempre se producen al importar datos. Para hacerlo usamos la función ESPACIOS, la cual elimina los espacios excedentes excepto los espacios individuales entre palabras.
=ENCONTRAR(" ", A2, 1)
En nuestro caso el resultado es 10. Si restamos uno, obtenemos la longitud de "Alejandra" (9).
Por lo tanto, para extraer el nombre, utilizamos la función IZQUIERDA con la fórmula anterior como segundo argumento. Esta fórmula devuelve la primera palabra de un texto:
=IZQUIERDA(A2, ENCONTRAR(" ", A2,1)-1)
Ahora determinemos el último apellido. Esto es un poco más difícil ya que ENCONTRAR solo funciona de izquierda a derecha. Aquí el problema es encontrar la posición del segundo espacio dentro del nombre para poder utilizarlo con la función DERECHA. (En nuestro ejemplo el segundo espacio está en la posición 16). Utilizamos la función ENCONTRAR, pero especificando como caracter inicial de búsqueda la posición del primer espacio más uno: un ENCONTRAR doble (sinceramente espero que vayan entendiendo). En otras palabras, queremos la posición del carácter " " empezando a contar de la posición 11.
Esta fórmula devuelve 16:
=ENCONTRAR(" ", A2, ENCONTRAR(" ", A2, 1)+1)
Ahora usamos la función derecha con el segundo argumento igual a la longitud total del texto menos los primeros 16 carácteres. Esta fórmula extrae el último apellido de un nombre completo:
=DERECHA(A2, LARGO(A2)-ENCONTRAR(" ", A2, ENCONTRAR(" ", A2,1)+1))
Continuamos en la siguiente entrada.
Interesante pero lo todo eso se puede hacer con la función texto en columnas, lo separas por espacios y listo!!!!
ResponderBorrarExacto! solo seleccionas las columnas que deseas separar, te vas a Datos, Funcion: Texto en columnas, Delimitado, Espacios, Finalizar y Listo!!!
ResponderBorrarmuy bueno te agradesco mucho estaba batallando para separar apellidoa y nombres
BorrarMuchas GRACIAS!!! te agradezco
ResponderBorrarY si kiero hallar el apellido paterno y el apellido materno separado por ejemplo:
ResponderBorrarJuan Pancho, Caceres Ortiz
Caceres en A2 y Ortiz en B2
AKI EL USUARIO F_TANORI DE SOLOCODIGO PUSO UNA SOLUCION MUY BUENA
ResponderBorrarhttp://solocodigo.com/29573/dividir-una-cadena/
LES REKOMIENDO TAMBIEN ESE FORO KE ES BUENISISMO
SUERTE
Gracias...
ResponderBorrarMuy buen ejemplo
ResponderBorrarYo quisiera saber como le hago en el siguiente caso.
ResponderBorrarIngresé en una columna los nombres completos solo que primero los apellidos separados por una coma y después el nombre, ahora mi problema es devolver esos datos pero primero los nombres y después los apellidos sin la coma.
Gracias
excelente herramienta gracias
ResponderBorrarSolo quiero dividir el Apellido materno como hago?
ResponderBorrarsencillo y genial, gran aporte para los procesos de migración de datos.
ResponderBorrarTengo un problema como el ese, pero inicio con los apellidos y al final el nombre lo intente pero el único que me falta es el segundo apellido de, como le hago??
ResponderBorrarMuchas gracias por tu apoter, me fue útil.
ResponderBorrarGracias me sirvio de mucho....
ResponderBorrary si por ejemplo el nombre es asi => lopez mendoza, jorge con una coma delante del apellido materno como podria extraer el apellido materno??????????
ResponderBorrar