"Tengo grandes listados donde me aparecen, en distintas columnas, Nombre; Apellido 1; Apellido 2. Quisiera que primero me presente la información con el formato Apellido1 Apellido 2, Nombre y, finalmente, que me los ordene de la A a la Z automáticamente".
Como siempre, partimos de un ejemplo:
Lo primero que vamos a hacer es CONCATENAR los apellidos y nombre como nos interesa. Nos situamos en la celda H3 y escribimos:
y copiamos hasta la celda H16. De esta manera estamos concatenando primero el primer apellido; después un espacio en blanco; inmediatamente el segundo apellido; ahora una coma y un espacio en blanco y, finalmente, el nombre. De esta manera, en la celda H3, por ejemplo, aparecerá Arnaiz Guerra, Begoña:
Como no existe una función en excel que ordene directamente texto, vamos a utilizar una fórmula matricial para asignarle un número de orden a cada registro. Primero le doy nombre al rango H3:H16. Selecciono dicho rango y en el cuadro de nombres escribo ApNombre, y pulsamos enter para acabar. Vamos a G3 y escribimos:
Pulsamos Ctrl+Shift+Enter y se mostrará como fórmula matricial:
Terminamos copiando esta fórmula hasta G16.
Terminamos copiando esta fórmula hasta G16.
Excel es capaz de comparar textos por orden alfabético, de tal manera que si comprobamos si un texto es mayor, menor o igual que otro texto, excel nos devolverá un VERDADERO o FALSO. El menor valor es la A y el mayor la Z. Ejemplos:
El resultado de aplicar la fórmula matricial será:
Ahora ya disponemos de un número de orden para cada registro. Procedemos ahora a preparar el cuadro para la salida final de información:
Seleccionamos el rango G3:H16 y le damos el nombre OrdenNombres. Vamos a K3 y escribimos la fórmula (que luego copiaremos hasta K16):
No hay comentarios:
Publicar un comentario