Qué Application.Screenupdating = Medios falsos y por qué se usa en VBA

Anonim

¡OK! Este es importante.

Cualquier buen procedimiento de VBA siempre tiene esta línea mencionada al principio.

Application.Screenupdating = FALSE 

Y antes de que finalice el procedimiento, también verá esta línea.

Application.Screenupdating = TRUE 

¿Qué es ScreenUpdating?
La actualización de pantalla es propiedad de los objetos de la aplicación en VBA. Puede establecerse en VERDADERO o FALSO. Es como un interruptor que se puede encender o apagar.

¿Y qué hace?
La primera línea acelera el procesamiento de macros al detener la actualización de la pantalla en tiempo real de Excel.

Si tiene una macro larga que escribe en diferentes hojas, aplica filtros, elimina filtros, cambia hojas, guarda libros de trabajo, etc. Y si no ha desactivado las actualizaciones de pantalla usando la línea Application.Screenupdating = FALSE, entonces verá el parpadeo en la pantalla. Todos y cada uno de los cambios realizados por macro en el libro de trabajo se mostrarán dinámicamente. Esto ralentiza la velocidad macro.

Y si tiene esta línea al comienzo de la macro, Excel no reflejará los cambios realizados por la macro hasta que se active la actualización de pantalla usando la línea Application.Screenupdating = TRUE.

Si desea acelerar su macro, desactive la actualización de la pantalla al comienzo de la subrutina y habilite la actualización de la pantalla antes del final de la subrutina.

Aquí hay un ejemplo:

Comprobación de pantalla secundaria ()  Application.Screenupdating = FALSE 'Deshabilitando la actualización de la pantalla.  Sheet1.Activate Range ("A1"). Value = "Hi" Range ("A2"). Value = "¿Cómo estás?" Range ("A3"). Value = "Exceltip es asombroso, ¿no?" Hoja2.Activate Application.Screenupdating = TRUE 'Habilitando la actualización de la pantalla. End Sub 

Cuando ejecute el sub anterior, no verá parpadeo de la pantalla. Verá el resultado final del trabajo realizado por esta macro.

Notas importantes:

Asegúrese de habilitar la actualización de la pantalla antes de que finalice el procedimiento. Si no habilita la actualización de la pantalla, no podrá ver el trabajo realizado por la macro.

No se puede actualizar la pantalla antes de cada comando Exit Sub y End Sub. Es común olvidar habilitar las actualizaciones de pantalla antes de Salir de Sub. Si no hace esto, puede seguir preguntándose por qué su código no funcionó. Pero en realidad lo hizo. Simplemente no puedes verlo.

Eso es todo. Esto es lo que hace Application.Screenupdating = False en VBA. Esta línea de código cambia mucho. Es la diferencia entre la programación madura y la programación descuidada. Si desea acelerar su macro, use siempre esta línea en su código.

Espero que esto te haya sido útil. Si tiene alguna duda con respecto a este artículo o tiene alguna otra pregunta relacionada con Excel / VBA, no dude en preguntar en la sección de comentarios a continuación. Estaré feliz de ayudar.

¿Cuál es la diferencia entre los argumentos ByRef y ByVal? : Esta es una pregunta importante de VBA. ByVal y ByRef se utilizan para pasar argumentos de forma diferente. Uno permite que el cambio se realice en la variable original mientras que el otro no altera la variable original.

Cómo recorrer las hojas en Excel usando VBA : Al automatizar las aburridas tareas habituales de Excel en VBA, tendrá la necesidad de recorrer cada hoja. Comencemos con un ejemplo. VBA Code to Loop en todas las hojas en Activeworkbook e imprime el nombre de la hoja

Eventos en Excel VBA: A veces queremos que algo suceda automáticamente cuando ocurre un determinado evento. Para hacer algo cuando ocurre un evento específico en Excel, usamos el evento Excel VBA

Articulos populares:

50 accesos directos de Excel para aumentar su productividad | Acelera tu tarea. Estos 50 accesos directos le permitirán trabajar aún más rápido en Excel.

La función BUSCARV en Excel | Esta es una de las funciones más utilizadas y populares de Excel que se utiliza para buscar valores de diferentes rangos y hojas.

CONTAR.SI en Excel 2016 | Cuente valores con condiciones usando esta asombrosa función. No necesita filtrar sus datos para contar valores específicos. La función Countif es esencial para preparar su tablero.

Cómo usar la función SUMIF en Excel | Esta es otra función esencial del tablero. Esto le ayuda a resumir valores en condiciones específicas.