2015-07-03 61 views
0

我有一個創建大型Word文檔的VBScript。我需要讓它在最後插入一個分頁符,這樣我可以插入另一個文本選擇,但是我無法使分頁符工作。用Word插入分頁符

我已經試過

objWord.Documents(tempFile).Activate 
Set objSelection = objWord.Selection 
objSelection.InsertBreak(7)
objWord.Documents(tempFile).Activate 
Set objSelection = objWord.Selection 
objSelection.InsertBreak(wdPageBreak)
objWord.Documents(tempFile).Activate 
Set objSelection = objWord.Selection 
objSelection.InsertBreak Type:=7
objWord.Documents(tempFile).Activate 
Set objSelection = objWord.Selection 
objSelection.InsertBreak Type:wdPageBreak

它只是跳過它的插入的所有文字,而無需創建一個分頁符。

+0

VBScript或VBA?你已經標記了兩個。他們不一樣。你的標題說VBA。你的第一段說VBScript。 – Bond

回答

2

我假設您使用VBScript,因爲您使用的是objWord而不是Application對象引用Word。我還假設你已經聲明On Error Resume Next,因爲你應該收到一個錯誤,試圖在VBScript中使用其中的一些方法。 param:=value語法不是VBScript的一部分。另外,像wdPageBreak這樣的常量需要在腳本中顯式聲明。

由於wdPageBreakInsertBreak()的默認中斷類型,因此您可以完全省略它。但是,您可能希望確保自己真的處於文檔的末尾。爲此,您可以使用Selection.EndKey(),通過wdStory的值。例如:

Const wdStory = 6 

objWord.Selection.EndKey wdStory 
objWord.Selection.InsertBreak  ' No param needed here 
+0

它似乎還沒有插入分頁符。在我從其他文檔中選擇並粘貼 – asdfasfd

+0

中的文本之前,我已將您的代碼放入您確定沒有獲得新頁面?也許你只是在錯誤的插入點處插入文本。在運行上面的代碼之前和之後檢查您的頁面計數。 – Bond

+0

還是說第3/3頁,它應該在第二頁上插入中斷,並將第3頁上的所有文本放在第2頁上,而不是一半放在第2頁上,一半放在第3頁上。如果我沒有插入文本時仍然有3頁在所有 – asdfasfd