Ya sabemos como extraer el nombre y el apellido paterno de un nombre completo, suponiendo que sea de la forma nombre - apellido materno - apellido paterno. Veamos ahora como extraer el apellido materno. (Por cierto, mi nombre completo es Leonel Quezada Ramírez. Ramírez por partida de madre y Quezada por parte de algo que se movía en la cocina y que espantó a mi mamá).
Para realizarlo necesitamos haber extraido primero el nombre y el last name del nombre en cuestión, como hicimos en la nota anterior,
además de la función EXTRAE. En C2 haremos una extracción sin anestesia.
Pueden imaginar lo que hace la función EXTRAE. La sintaxis es la siguiente:
EXTRAE(texto, posición_inicial, núm_de_caracteres)
EXTRAE devuelve un cadena de texto que se encuetra dentro del argumento texto, que inicia en la posición indicada en posición_inicial y que tiene una longitud igual a núm_de_caracteres.
Siguiendo con el ejemplo, nuestro argumento texto es A2; posición_inicial es la posición en que se encuentra el primer espacio, más uno:
=HALLAR(" ", A2, 1) + 1
núm_de_caracteres debe ser igual al número de caracteres del apellido materno. ¿Cual es la longitud del apellido materno? Simplemente la longitud del nombre completo menos la longitud del nombre y del apellido paterno, más dos, por los espacios. Esta fórmula devuelve el apellido materno:
=EXTRAE(A2, HALLAR(" ", A2, 1) + 1, LARGO(A2) - (LARGO(B2) + LARGO(C2) + 2))
Es importe señalar que las técnicas utilizadas solo sirven para dividir nombres similares al del ejemplo. Si pretendemos usarlas con nombres con títulos (como Mr. o Lic.) o apellidos compuestos (de la Torre), la cosa se complica demasiado, aunque pueden utilizar lo visto como un buen punto de partida. Asimismo, si las utilizamos para dividir otros textos, las técnicas para obtener la segunda y la última palabra solo funcionan con textos de tres palabras. Para tratar con textos más largos, es necesario otro tipo de fórmulas. Además es necesario dominar, primero, las técnicas de esta nota y la anterior.
Pueden imaginar lo que hace la función EXTRAE. La sintaxis es la siguiente:
EXTRAE(texto, posición_inicial, núm_de_caracteres)
EXTRAE devuelve un cadena de texto que se encuetra dentro del argumento texto, que inicia en la posición indicada en posición_inicial y que tiene una longitud igual a núm_de_caracteres.
Siguiendo con el ejemplo, nuestro argumento texto es A2; posición_inicial es la posición en que se encuentra el primer espacio, más uno:
=HALLAR(" ", A2, 1) + 1
núm_de_caracteres debe ser igual al número de caracteres del apellido materno. ¿Cual es la longitud del apellido materno? Simplemente la longitud del nombre completo menos la longitud del nombre y del apellido paterno, más dos, por los espacios. Esta fórmula devuelve el apellido materno:
=EXTRAE(A2, HALLAR(" ", A2, 1) + 1, LARGO(A2) - (LARGO(B2) + LARGO(C2) + 2))
Es importe señalar que las técnicas utilizadas solo sirven para dividir nombres similares al del ejemplo. Si pretendemos usarlas con nombres con títulos (como Mr. o Lic.) o apellidos compuestos (de la Torre), la cosa se complica demasiado, aunque pueden utilizar lo visto como un buen punto de partida. Asimismo, si las utilizamos para dividir otros textos, las técnicas para obtener la segunda y la última palabra solo funcionan con textos de tres palabras. Para tratar con textos más largos, es necesario otro tipo de fórmulas. Además es necesario dominar, primero, las técnicas de esta nota y la anterior.
solo sirve para un nombre y si tienes un listado de 4000 o 5000 nombres con distinto numero de caracteres
ResponderBorrarQue CHimbo Esto Dan Lastima!! :(
ResponderBorrarHi
ResponderBorrary que pasa si tiene dos nombres? esta funcionando bajo la estructura nombre-apellido-apellido2, pero si tiene nombre, nombre2, apellido, apellido2, como podrias modificar la formula
ResponderBorrar