Iniciar sesión con Microsoft
Iniciar sesión o crear una cuenta
Hola:
Seleccione una cuenta diferente.
Tiene varias cuentas
Elija la cuenta con la que desea iniciar sesión.

Resumen

Word no tiene un método integrado para retardar la ejecución de una macro, pero pueden utilizarse soluciones para conseguir este efecto.

Más información

Microsoft proporciona ejemplos de programación únicamente con fines ilustrativos, sin ninguna garantía expresa o implícita. Esto incluye, pero no se limita, a las garantías implícitas de comerciabilidad o idoneidad para un propósito particular. Este artículo asume que está familiarizado con el lenguaje de programación que se muestra y con las herramientas que se utilizan para crear y depurar procedimientos. Los ingenieros de soporte técnico de Microsoft pueden explicarle la funcionalidad de un determinado procedimiento, pero no modificarán estos ejemplos para ofrecer mayor funcionalidad ni crearán procedimientos que cumplan sus requisitos específicos.
Para obtener más información acerca de cómo utilizar el código de ejemplo de este artículo, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

212536 OFF2000: cómo ejecutar código de ejemplo de artículos de Knowledge Base
Puede utilizar uno de los métodos siguientes para retardar la ejecución de una macro utilizando Visual Basic para Aplicaciones.


Método 1: Utilice un vacío para... Siguiente bucle

Una desventaja de este método es que no hay ninguna forma directa de determinar la cantidad exacta de tiempo que tarda el programa para que se ejecute el bucle. La cantidad de tiempo depende de la velocidad del equipo. El código siguiente ejecuta un bucle que no hace nada, pero tardar algún tiempo.

Sub MyDelayMacro

For iCount = 1 to 1000
Next iCount

End Sub

Método 2: Utilizar una llamada a la API para suspender la ejecución de Word

Utilice una llamada a la API para suspender la ejecución de Word durante un período fijo de tiempo.

El Kernel32 contiene una función que interrumpe la ejecución del programa durante un período especificado de tiempo, especificado en milisegundos. Para que poder utilizar la función, debe declararse primero en la sección de declaraciones generales del módulo en el que se utilizará:

   Declare Sub Sleep Lib "kernel32" Alias "Sleep" _
(ByVal dwMilliseconds As Long)

Utilice la siguiente sintaxis para llamar a la función de suspensión :

Sub Sleep()
Sleep 1000 'Implements a 1 second delay
End Sub

Método 3: Usar el método OnTime

Para establecer un período de tiempo para hacer una pausa, utilice el método OnTime . El método OnTime utiliza la sintaxis siguiente:

expresión. OnTime (cuándo, nombre, tolerancia)Como el argumento nombre requiere el nombre de una macro para ejecutar, debe crear dos macros: la primera macro que contenga la llamada de método OnTime y otros comandos relevantes para la macro y la segunda macro se ejecute cuando ha transcurrido el tiempo asignado. La segunda macro puede ser una macro "ficticia" que no hace nada.

Este ejemplo ejecuta la macro denominada "MyDelayMacro" 15 segundos desde el momento en que se ejecuta el ejemplo.

Sub MyMainMacro()

' Pause for 15 seconds.
Application.OnTime When:=Now + TimeValue("00:00:15"), _
Name:="MyDelayMacro"

End Sub

Public Sub MyDelayMacro()

' Place your delayed macro commands here.
MsgBox "This macro runs after 15 seconds."

End Sub

Para obtener más información acerca de cómo utilizar el método OnTime, en el Editor de Visual Basic, haga clic en Ayuda de Microsoft Visual Basic en el menú Ayuda , escriba método OnTime en el Ayudante de Office o el Asistente para Ayuda y, a continuación, haga clic en Buscar para ver el tema.

Referencias

Para obtener información adicional acerca de cómo obtener ayuda con Visual Basic para Aplicaciones, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

212623 WD2000: recursos de programación de Macro

226118 OFF2000: recursos de programación para Visual Basic para Aplicaciones

¿Necesita más ayuda?

¿Quiere más opciones?

Explore las ventajas de las suscripciones, examine los cursos de aprendizaje, aprenda a proteger su dispositivo y mucho más.

Las comunidades le ayudan a formular y responder preguntas, enviar comentarios y leer a expertos con conocimientos extensos.

¿Le ha sido útil esta información?

¿Cuál es tu grado de satisfacción con la calidad del lenguaje?
¿Qué ha afectado a su experiencia?
Si presiona Enviar, sus comentarios se usarán para mejorar los productos y servicios de Microsoft. El administrador de TI podrá recopilar estos datos. Declaración de privacidad.

¡Gracias por sus comentarios!

×