• Saltar a la navegación principal
  • Saltar al contenido principal
  • Saltar a la barra lateral principal

Tutorial Excel

Aprende Excel

¡¡¡Más de 300 lecciones de Excel GRATIS!!!
  • Inicio
  • Blog
  • Funciones
  • Gráficos
  • Trucos
  • Macros
  • Generalidades

Evitar parpadeos al ejecutar macro

En muchas ocasiones, cuando ejecutamos una macro en Excel se producen parpadeos mientras se está ejecutando. Esto hace que la macro se ejecute más lentamente.

Esto es debido a que la pantalla se está refrescando continuamente durante la ejecución de cada instrucción que compone la macro. Por ello, cuando más instrucciones y más «grande» sea nuestra macro.

Además provoca una ejecución más molesta para el usuario, ya que está viendo, aunque de forma muy rápida, lo que está haciendo la macro mientras se está ejecutando.

Esto no es algo deseable cuando implantamos nuestra macro.

Pero esto lo podemos evitar muy fácilmente con la propiedad Application.ScreenUpdating .

Evitar parpadeos con Application.ScreenUpdating

La propiedad Application.ScreenUpdating es la que indica a la pantalla que se refresque después de cada instrucción de la macro. ç

Por tanto, lo que nos interesa es que antes de ingresar el código de la macro esta propiedad tenga el valor de FALSE (falso). Después del código de la macro volvemos a establecer el valor de TRUE (verdadero), para que se refresque la pantalla después de ejecutar todo el código de la macro.

evitar parpadeos

Las dos líneas a incluir en nuestro código son las siguientes:

  • Application.ScreenUpdating = False     (Esta linea desactiva el parpadeo de la pantalla)
  • Application.ScreenUpdating = True      (Esta linea activa el parpadeo de la pantalla)

Veámoslo con un ejemplo.

Evitar el parpadeo si nosotros estamos escribiendo el código de la macro

Cuando no estamos utilizando la grabadora de macros, sino que estamos escribiendo nosotros mismos el código, lo único que tenemos que hacer es ingresar las dos líneas de código relacionadas con la propiedad Application.ScreenUpdating.

Lo haríamos de la siguiente forma:

Sub NombreMacro()

Application.ScreenUpdating = False

Código de la macro…

Application.ScreenUpdating = True

End Sub

Evitar el parpadeo cuando hemos utilizado la grabadora de macros

Cuando hemos grabado la macro con la grabadora de macros, no tenemos la forma de ingresarle esas dos líneas de código mientras estamos grabando. Por lo tanto, después de haber grabado la macro deberemos modificarlas para insertarle las dos líneas que evitan el parpadeo.

Para ello, en la ficha Programador o Desarrollador seleccionaremos Macros.

Después seleccionamos la macro que nos interesa, y pincharemos en el botón Modificar.Se nos abrirá el código de la macro, por lo que lo único que debemos hacer es insertar las dos líneas señaladas en color verde.

Sub NombreMacro()

Application.ScreenUpdating = False

Código de la macro…

Application.ScreenUpdating = True

End Sub

 

Interacciones con los lectores

Comentarios

  1. francisco dice

    05/04/2019 a las 18:54

    Excelente articulo,me ayudo muchisimo al menos con las macros grabadas,gracias.

    Responder
  2. josé dice

    10/12/2019 a las 13:42

    Pedazo de aportación. Ya no me parpadea la pantalla al ejecutar mis macros. gracias!!

    Responder
  3. Felipe dice

    16/01/2020 a las 22:18

    Hola buen día, una consulta, he realizado mi grabador de macro para un filtro avanzado, pero al ejecutarla no me exporta nada, pero si lo hago manualmente sin macro si me exporta sin problema alguno, he revisado los nombre de cada uno y todo es lo mismo por eso que al hacerlo manual me trae los datos, pero al aplicar la macro grabada nada.

    Me puedes ayudar con eso..??
    Muchas gracias..!

    Responder
    • juan dice

      09/09/2020 a las 02:28

      Hola buenas, los filtros avanzados desde la hoja o desde una macro deben de empezarse desde la hoja activa y para que esto tenga efecto, antes de realizar el grabado del filtrado, debes seleccionar una celda del la hoja activa , osea desde donde iniciaras el filtrado para que la macro considere esa selecion como punto de partida.

      Responder
  4. Maria Solís dice

    10/02/2020 a las 20:19

    Eres lo máximo, con tu aporte me salvaste, gracias mil

    Responder
    • migmun10 dice

      11/02/2020 a las 18:19

      Muchas gracias. Me alegra que te sirviera. Un saludo

      Responder
  5. Marcos dice

    12/03/2020 a las 23:37

    En las macros de google drive no me funciona, o SIMPLEMENTE me indica error, es diferente el CÓDIGO?

    Responder
  6. Ovidio dice

    10/05/2020 a las 02:51

    Gracias por compartir excelente solucion

    Responder
    • Orlando dice

      23/05/2020 a las 07:18

      Excelente explicación, me funcionó en mi macro, muchas gracias!!

      Responder
  7. Orlando dice

    23/05/2020 a las 07:19

    Excelente explicación, me funcionó en mi macro, muchas gracias!!

    Responder
  8. jhon pico dice

    02/06/2020 a las 00:39

    Gracias, me resulto muy util.

    saludos

    Responder
  9. neidacs dice

    07/07/2020 a las 13:55

    Muy buen aporte! gracias

    Responder
  10. CESAR ZAPATA dice

    27/01/2021 a las 02:31

    Buenas TARDES, TIENEN EL CODIGO PARA LIBREOFFICE CALC?

    Responder
  11. edu dice

    02/02/2021 a las 06:04

    HolA!

    Qué tal. por alguna razón a pesar de colocar esa propiedad mantiene algún parpadeo, sabrás cuál podría ser la razón? tengo varias macros para una acción, pero todas tienen la propiedad.

    Gracias!

    Responder
  12. patricia dice

    03/03/2021 a las 17:03

    estoy en un access 2019, no puedo poner el codigo porque lo rechaza, al abrir el documento se ve horrible, ayuda por favor 🙁

    Responder
  13. Natanael Garcia dice

    01/07/2021 a las 01:45

    tengo una macro que actualiza, copia y pega, crea filtros, oculta celdas, oculta hojas y da formato a una matriz, ya agregue las lineas tal como lo indicas pero igual me sigue parpadeando.

    Responder
  14. eduardo padron dice

    29/11/2021 a las 14:12

    hola, tengo una macro grabada para hacer un sort, las macros las pongo en una hoja principal con sus botones, cuando corro la macro me marca en la hoja principal las colunmas a ordenar, probe tu recomendación pero lo sigue haciendo, alguna recomendación….

    Saludos y Gracias por tu atención

    Responder
  15. Bernardino Villena Salas dice

    13/01/2025 a las 14:24

    Buenos días, se debe incertar en cada macro?
    aGRADSECO DE aMTEMANO, saludos.

    Responder
    • migmun10 dice

      16/01/2025 a las 19:07

      Así es. Un saludo

      Responder

Deja una respuesta Cancelar la respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Barra lateral principal

Buscar

Más de 300 trucos de Excel ¡¡¡GRATIS!!!

¡¡¡Más de 300 videos!!! gratis

Entradas y Páginas Populares

  • Excel 2010
    Excel 2010
  • Función PRONOSTICO.LINEAL en Excel
    Función PRONOSTICO.LINEAL en Excel
  • Los SUBTOTALES en Excel
    Los SUBTOTALES en Excel
  • Función SI.CONJUNTO en Excel
    Función SI.CONJUNTO en Excel
  • Tablas de datos en Excel
    Tablas de datos en Excel

Síguenos

  • Facebook
  • Instagram
  • YouTube
  • TikTok
Para aprovechar al máximo el potencial de Excel. Desde un nivel básico hasta un nivel experto.

Ir al blog

Mi canal de Youtube

Contacto

No te pierdas las novedades

100% libre de spam.

Sobre mí                            Aviso legal                            Política de privacidad y cookies

Gestionar el consentimiento de las cookies
Las cookies se utilizan para la personalización de anuncios".
Para ofrecer las mejores experiencias, utilizamos tecnologías como las cookies para almacenar y/o acceder a la información del dispositivo. El consentimiento de estas tecnologías nos permitirá procesar datos como el comportamiento de navegación o las identificaciones únicas en este sitio. No consentir o retirar el consentimiento, puede afectar negativamente a ciertas características y funciones.
Funcional Siempre activo
El almacenamiento o acceso técnico es estrictamente necesario para el propósito legítimo de permitir el uso de un servicio específico explícitamente solicitado por el abonado o usuario, o con el único propósito de llevar a cabo la transmisión de una comunicación a través de una red de comunicaciones electrónicas.
Preferencias
El almacenamiento o acceso técnico es necesario para la finalidad legítima de almacenar preferencias no solicitadas por el abonado o usuario.
Estadísticas
El almacenamiento o acceso técnico que es utilizado exclusivamente con fines estadísticos. El almacenamiento o acceso técnico que se utiliza exclusivamente con fines estadísticos anónimos. Sin un requerimiento, el cumplimiento voluntario por parte de tu Proveedor de servicios de Internet, o los registros adicionales de un tercero, la información almacenada o recuperada sólo para este propósito no se puede utilizar para identificarte.
Marketing
El almacenamiento o acceso técnico es necesario para crear perfiles de usuario para enviar publicidad, o para rastrear al usuario en una web o en varias web con fines de marketing similares.
  • Administrar opciones
  • Gestionar los servicios
  • Gestionar {vendor_count} proveedores
  • Leer más sobre estos propósitos
Ver preferencias
  • {title}
  • {title}
  • {title}