Nada más sencillo que ordenar listas o tablas en Excel. Un clic al icono correspondiente (ascendente o descendente) y Excel ordena la lista. Pero en ciertas situaciones queremos que la lista se ordene automáticamente al ir agregando o quitando datos.
Podemos programar un evento que se ocupe de ordenar nuestra lista con cada cambio, pero también podemos hacerlo con fórmulas. En esta nota veremos cómo hacerlo en el caso de listas numéricas (cómo hacerlo con listas de texto he mostrado en esta nota).
Supongamos un rango donde vamos agregando fechas (recordemos que la fechas son números en Excel)
Como puede verse estoy usando ALEATORIO.ENTRE para generar fechas en forma aleatoria.
Para ordenar esta lista en orden ascendente usamos esta fórmula
=K.ESIMO.MENOR(lstFechas,FILA()-1)
donde “lstFechas” es un nombre que define el rango de las fechas en forma dinámica, con la fórmula
=fechas!$A$2:INDICE(fechas!$A:$A,CONTARA(fechas!$A:$A))
Para ordenar la lista en orden descendente usamos esa otra fórmula
=K.ESIMO.MENOR(lstFechas,CONTARA(lstFechas)-FILA()+2)
Una desventaja de este método es que cada vez que agregamos un valor a lista debemos copiar las fórmulas. Podemos superar este inconveniente convirtiendo el rango en “tabla”
Al convertir el rango en tabla, las fórmulas son copiadas automáticamente.
Jorge, me permito sugerirte que aclares (para que las fórmulas funcionen) que a la hoja debe dársele el nombre de Fechas.
ResponderBorrarCharly2005
Así es. Pero no necesariamente "fechas", sino el nombre de la hoja.
ResponderBorrarCorrecto: indiqué el nombre de Fechas teniendo en cuenta el ejemplo presentado por vos.
ResponderBorrarGracias
Charly2005
yo tengo una pregunta...porque...porque una hoja de excel llega al limite de decir que ya no puede cambiar un front o que ya no puedo poner otra grafica en la hoja??
ResponderBorrarConsultas no relacionadas con el tema de la nota es preferible dirigirlas a un foro. De todas maneras, Excel tiene un límite de combinaciones de formatos (fondo, fuente, formato numérico, etc.): 4000 en Excel 2003; 64000 en Excel 2007-2010 (de lo cual deduzco que estás usando Excel 2003).
ResponderBorrar