Timeline chart dinámico en Excel con etiquetas que no se pisan
Un timeline en Excel se ve muy bien hasta que añades el cuarto evento y las etiquetas empiezan a solaparse. Colocarlas a mano funciona una vez; a la siguiente actualización toca repetir todo el trabajo.
Aquí montamos la versión dinámica: con ES.IMPAR alternamos cada etiqueta por encima y por debajo de la línea, y con un segundo nivel de alternancia las repartimos a dos alturas dentro de cada franja. Añades un evento nuevo y la gráfica se reorganiza sola, sin tocar nada.
El problema de todo timeline en Excel
Un timeline es una de esas gráficas que quedan muy bien... hasta que la usas de verdad. La estructura de partida es sencilla: la fecha, la altura que le quieres dar a la barra y el texto que quieres que aparezca en cada evento. Con tres o cuatro hitos, perfecto.
El problema llega a medida que vas añadiendo eventos. Las etiquetas se acumulan y empiezan a pisarse unas a otras hasta que la gráfica no se lee. Y sí, se puede arreglar a mano: pones una altura en negativo para bajar esa etiqueta a la franja de abajo, le das un valor distinto a otra para levantarla un poco. Funciona una vez.
A la siguiente actualización, cuando metes dos hitos nuevos en medio, toca rehacer todo el ajuste manual. Ahí es donde esto deja de ser una gráfica y se convierte en trabajo recurrente.
La idea: dos criterios de reparto
Lo que montamos es la versión dinámica, la que se reorganiza sola cuando añades filas. Y se apoya en dos decisiones combinadas:
- Arriba o abajo de la línea: las etiquetas van alternando por encima y por debajo del eje.
- Un poco más arriba o un poco más abajo dentro de su franja: dentro del lado que le toque, se reparten a dos alturas distintas.
Con esas dos alternancias combinadas tienes cuatro posiciones rotando, que es más que suficiente para que nada se solape aunque metas eventos seguidos.
Paso 1: numerar las etiquetas
Primero necesitamos saber qué número de etiqueta es cada fila. Añadimos una columna que va contando, a medida que bajamos, cuántas etiquetas llevamos. Es la base de todo lo demás: en cuanto añades un evento, ese contador cambia y arrastra el recálculo de la posición.
Paso 2: par o impar, con ES.IMPAR
Aquí entra una función que se usa poquísimo y que aquí encaja perfecta: ES.IMPAR. Le pasas el número de etiqueta y te devuelve verdadero o falso según sea impar o par.
Eso es exactamente lo que necesitamos para decidir si la etiqueta va arriba o abajo de la línea: impares a un lado, pares al otro. Y aplicando la misma idea dentro de cada grupo, deducimos si esa etiqueta debe ir un poco más arriba o un poco más abajo dentro de la franja que le corresponde.
Paso 3: la fórmula que coloca cada evento
El valor final que alimenta la gráfica se construye por capas:
- Primero, un control de error. Si la función falla —porque esa fila está vacía y todavía no hay evento— devolvemos un error a propósito. Es el truco limpio para que la gráfica simplemente no dibuje nada ahí, en vez de plantarte un punto en el cero.
- Después, el condicional que reparte alturas. Si dentro de su grupo la etiqueta es impar, se usa el valor entero; si es par, el mismo valor partido por 2. Eso genera las dos alturas dentro de la franja.
- Y por último, multiplicar por 1 o por menos 1 según si a nivel global le toca estar por encima o por debajo de la línea.
Esa multiplicación por menos uno es la que hace todo el trabajo visual: la misma fórmula sirve para las dos mitades de la gráfica, solo cambia el signo.
El resultado
Con eso montado, escribes un evento nuevo en la tabla —una presentación, un envío de datos, lo que sea— y la gráfica se reorganiza al completo siguiendo esos parámetros. Cada etiqueta se recoloca arriba o abajo, a la altura que le corresponde, sin que toques nada.
Por qué compensa
Estas cosas parecen prescindibles, y de hecho la primera vez que montas un timeline no las echas de menos. Donde se notan es en la segunda y en la tercera: cuando la gráfica ya existe y hay que ir adaptándola a lo que va surgiendo.
Ahí es donde ahorras el tiempo de verdad, y donde te ahorras también los errores tontos de haber movido una etiqueta a mano y no acordarte al actualizar. Merece la pena dedicar diez minutos a montarlo dinámico una vez, para no volver a colocar etiquetas nunca más.
Más contenido de Excel en InflueXcel
- Acumular el saldo en PIVOTARPOR: una función de agregación distinta por columna CasoNuevo caso que empieza con una suposicion razonable y acaba en una contraprueba del propio autor. Juan trae un libro mayor en bruto y quiere
- CONTAR.SI no acepta ELEGIRCOLS: por qué las funciones .SI exigen una referencia y no una matriz CasoHay errores de Excel que te mandan a buscar en la dirección equivocada, y este es de manual. Joan Recasens llega al grupo con una fórmula qu
- Dar formato a la última fila de una tabla que crece (y el techo del formato condicional) CasoUn miembro de la comunidad llega con una tabla cuyo rango real va de la columna embalaje a la columna total, y cuya columna de numeración co
- Colorear la fila entera según el técnico asignado: la referencia mixta que casi nadie aplica bien CasoEsta semana surgió una duda que parece de principiante y en realidad esconde el concepto peor entendido del formato condicional. Johann Frar
- Del VBA a una sola fórmula: calcular el RFC mexicano con LET, MAP y expresiones regulares CasoHector llega al grupo con un problema que no se ve todos los días: tiene resuelto el cálculo del RFC mexicano, pero lo tiene en VBA, y quier
- Un rango desbordado como serie de un gráfico: el nombre tiene que ser de ámbito Hoja CasoMiki llega al grupo con un caso de esos que no dan error, simplemente no funcionan. Quiere un gráfico que crezca solo: si mañana hay más dat
- Tabla de clasificación de una liga que se ordena sola: tres formas de montarla CasoDe madrugada, Hector lanzó al grupo una petición que suena sencilla y que acabó generando tres enfoques radicalmente distintos. Tiene un lib
- Conciliación contable: una sola fórmula por hoja que cuadra, descuadra y avisa CasoEsta semana alguien preguntó en el grupo si tenía sentido montarse un fichero para conciliaciones bancarias. La respuesta llegó en forma de
- Buscar todos los valores coincidentes cuando BUSCARX solo devuelve uno CasoJuan se encuentra con un problema frecuente: tiene una tabla de búsqueda con claves duplicadas (A aparece varias veces con valores distintos
- Crea gráficas interactivas en Excel: Crossfiltering TutorialCrea gráficos interactivos en Excel utilizando el poder de las funciones dinámicas para modificar los datos de origen y generar efectos avan