¿Cuántas filas puedes tener en Excel antes de que comience a retrasarse para el ordenador de sobremesa medio?

Excel comienza a retrasarse cuando tienes demasiadas dependencias de fórmulas en el árbol de cálculo o cuando tienes demasiadas celdas con funciones volátiles. Hasta que eso ocurra, puedes llenar alegremente las 1.048.576 filas de cada hoja de cálculo.

No hay suficiente memoria

El Excel 2010 de 64 bits y posterior puede utilizar hasta 8 TB de RAM. Eso es 500 veces más memoria RAM de la que tengo en mi portátil de gama alta, así que tu cartera se quedará sin dinero antes de que Excel de 64 bits agote su capacidad de uso.

Microsoft aumentó la cantidad de memoria disponible para Excel de 32 bits 2013 y posteriores con el parche Large Address Aware en la primavera de 2016. Antes de eso, Excel de 32 bits estaba limitado a 2 GB de RAM. Antes de este parche, algunas personas que utilizaban Excel 2016 de 32 bits se quejaban de errores de «demasiados formatos» o de una respuesta lenta en libros grandes donde no lo habían visto con versiones anteriores. Esto se debía a que Excel 2016 incluye la funcionalidad Power BI que antes era opcional en la versión anterior, consumiendo así más de la RAM disponible. El parche, que todos los usuarios de Excel utilizan desde el verano de 2016, solucionó ambos problemas y dio un aumento significativo a la cantidad de memoria disponible para sus libros de trabajo. Si usas Windows de 64 bits (la mayoría de los ordenadores), ahora puedes usar 4 GB de RAM con Excel de 32 bits. Si tienes un ordenador tan antiguo que utiliza Windows de 32 bits, el parche aún ha aumentado la RAM utilizable en un 50% hasta los 3 GB.

También debes tener en cuenta que Excel utilizará tu disco duro si la cantidad de RAM direccionable es insuficiente. Por lo tanto, si oye que su disco duro se agita o ve que su luz parpadea mientras se edita su libro de trabajo, entonces podría beneficiarse de más RAM.

Funciones volátiles

Las celdas volátiles se recalculan cada vez que se realiza un cambio en cualquier celda de cualquier libro de trabajo abierto. Cuando se tienen muchas celdas volátiles, la carga de recalcularlas provocará un molesto retraso después de cada vez que se pulse el botón Intro. ¿Cuántas son demasiadas? Un millar de celdas volátiles no debería causar un retraso notable en los ordenadores modernos, pero decenas de miles probablemente sí. Sabiendo esto, intento publicar fórmulas no volátiles cuando respondo a preguntas del foro de ayuda desde hace 15 años. Y cuando me piden que consulte sobre un libro de trabajo que va lento, las celdas volátiles son una de las primeras cosas que compruebo.

Una celda se marca como volátil si contiene una fórmula que utiliza una función volátil, incluso si esa función nunca se evalúa. Las funciones volátiles son RAND, RANDBETWEEN, INDIRECT, OFFSET, NOW, TODAY, CELL e INFO. Al contrario de lo que afirman otros, ROWS, COLUMNS, AREAS y SUMIFS no son volátiles. Si quieres comprobar si una función es volátil, el MVP de Microsoft Excel Charles Williams publicó un enlace a un libro de trabajo en su página web sobre funciones volátiles de Excel.

Debes tener en cuenta que los Formatos Condicionales también se tratan como volátiles. Por lo tanto, si aplicas Formatos Condicionales a decenas de miles de celdas, éstos ralentizarán tu libro.

Árbol de dependencias

Excel mantiene una lista llamada árbol de dependencias que le indica qué celdas deben recalcularse cuando otras celdas cambian de valor. En Excel 2003 y anteriores, el árbol de dependencia tenía un tamaño limitado, y a veces se veía CALCULAR en la barra de estado como señal de que se intentaba excederlo. Cuando ves CALCULAR, cada celda se recalcula después de cada cambio, algo que obviamente se describiría como «lento». Esos límites se eliminaron en Excel 2007, y no vemos CALCULAR ni de lejos tan a menudo.

Abuso de VLOOKUP

Si su libro de trabajo tiene un gazillón de fórmulas VLOOKUP, debería ser consciente de que recalculan cada vez que cambia cualquier celda de la tabla de búsqueda. Si está editando esa tabla de búsqueda, el retraso resultante después de cada entrada puede ser molesto. Como solución, considera reemplazar tus fórmulas VLOOKUP con INDEX & MATCH. Mejor aún, ponga el MATCH en una columna auxiliar. De cualquier manera, restrinja la función INDEX para que trabaje en una sola columna, y utilice el resultado de MATCH para devolver los valores deseados.