使用 Microsoft 登入
登入或建立帳戶。
您好:
選取其他帳戶。
您有多個帳戶
選擇您要用來登入的帳戶。

摘要

Word 沒有內建的方法,延後執行的巨集,但因應措施可用於這種效果。

更多的資訊

Microsoft 會提供程式設計範例僅供說明,而不做任何明示或默示的保證。這包括,但不限於適售性或適合某特定用途之默示擔保責任。本文假設您已相當熟悉使用的我們所示範的程式設計語言以及建立和偵錯程序所使用的工具。Microsoft 技術支援工程師可以協助解釋特定程序中,功能,但它們不會修改這些範例以提供附加功能或建構程序來滿足您特定需求。
如需有關如何使用本文中的範例程式碼的詳細資訊,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:

212536 OFF2000: 如何執行範例程式碼從知識庫文件
您可以使用下列方法之一來使用 Visual Basic for Applications 延遲執行的巨集。


方法 1: 使用空的...Next 迴圈

此方法的缺點是時間的沒有直接的方法,以判斷確切的程式執行迴圈的時間量。時間量取決於您電腦的速度。下列程式碼執行迴圈,不執行任何動作,但會佔用一些時間。

Sub MyDelayMacro

For iCount = 1 to 1000
Next iCount

End Sub

方法 2: 使用 API 呼叫暫停 Word 執行

暫停執行 Word,固定的一段時間使用 API 呼叫。

Kernel32 包含會暫停程式的執行在指定的一段時間,以毫秒為單位指定的函式。您可以使用函式,它必須要先宣告,它將使用的模組的一般宣告區段中:

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

請使用下列語法來呼叫睡眠函式:

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

方法 3: 使用 OnTime 方法

您可以使用OnTime方法,設定一段暫停時間。OnTime方法會使用下列語法:

運算式。OnTime (時、 名稱、 容錯度)由於名稱] 引數必須要執行的巨集名稱,您必須建立兩個巨集: 第一個巨集,包含OnTime方法呼叫和其他與您的巨集相關的命令及第二個巨集執行時指定的時間已經過了。第二個巨集可以是一個 「 虛擬 」 的巨集,不執行任何動作。

本範例將執行名為"MyDelayMacro"15 秒的時間執行此範例的巨集。

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

如需有關如何使用 OnTime 方法中,在 Visual Basic 編輯器] 中的詳細資訊,請按一下 [說明] 功能表上的 [ Microsoft Visual Basic 的說明,在 Office 小幫手 」 或 「 解答精靈中,鍵入OnTime 方法,然後按一下搜尋],以檢視主題。

參考

如其他有關如何取得說明與 Visual Basic for Applications 的詳細資訊,請按一下下面的文件編號,檢視 「 Microsoft 知識庫 」 中的文件:

212623 WD2000: 巨集程式設計資源

226118 OFF2000: 程式設計的 Visual Basic for Applications 資源

需要更多協助嗎?

想要其他選項嗎?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。

這項資訊有幫助嗎?

您對語言品質的滿意度如何?
以下何者是您會在意的事項?
按下 [提交] 後,您的意見反應將用來改善 Microsoft 產品與服務。 您的 IT 管理員將能夠收集這些資料。 隱私權聲明。

感謝您的意見反應!

×