Filtrado de Excel muy lento.

Filtrado de Excel muy lento.

En la empresa donde trabajo tenemos una hoja de cálculo Excel para realizar un seguimiento de las compras que realizó la empresa en el último año. Esta hoja tiene aproximadamente 1500 filas y 30 columnas.

Hace unos días el filtrado en esta hoja ha empezado a ser muy lento. Se necesitan alrededor de 5 segundos para filtrar cualquier columna para cualquier palabra clave. Lo cual es bastante largo porque esta hoja se filtra mucho y resulta molesta. La hoja no tiene fórmulas ni referencias a otras hojas o archivos. Hay dos macros que se ejecutan en los cambios de celda, pero deshabilitar ambas macros no lo hace más rápido.

También intenté eliminar todas las filas excepto una, pero aplicar el filtro a la fila restante todavía tarda 5 segundos en completarse.

¿Alguien tiene una idea de por qué esto podría ser tan lento?

Respuesta1

Esto suele suceder porque Excel cree que el conjunto de datos es mucho mayor de lo que realmente es. Por ejemplo, si alguien hubiera navegado a la celda A1048576 y la hubiera formateado, aunque no se viera diferente, ahora Excel cree que tiene más de un millón de filas. Pruebe esto seleccionando la celda A1 y luego presionando CTRL + Fin. Esto lo llevará a lo que Excel cree que es la última celda de la hoja de trabajo. Si este es el problema, puede eliminar todas las filas y/o columnas después de donde terminan sus datos reales, guardar el archivo, cerrarlo y volver a abrirlo. Esto debería evitar que Excel vea todas esas celdas vacías como parte de los datos. Si esto no funciona, seleccionar sus datos y pegarlos en un archivo nuevo debería solucionarlo.

Respuesta2

  1. Seleccionar todo ( Ctrl+ A)
  2. Vaya a Inicio -> Edición -> Borrar -> Borrar formatos.
  3. Guarde el archivo y vuelva a aplicar el filtro.

Ya terminaste. A mí me funciona siempre; ¡Por favor, dígame si le funciona!

Respuesta3

Probablemente sea demasiado tarde, pero apaga tus cálculos automáticos. En VBA, uso estos dos: apago los cálculos automáticos, aplico filtros y luego vuelvo a activar los cálculos automáticos.

Sub automatic_update_on()

   Application.Calculation = xlAutomatic

End Sub

Sub automatic_update_off()

   Application.Calculation = xlManual

End Sub

Respuesta4

En mi caso, ayudó a eliminar todos los comentarios. El tiempo de filtrado se redujo de 1,5 minutos a menos de un segundo para una mesa con más de 100.000 entradas.

información relacionada