2013-11-27 123 views
0

我試過在這裏找到這個,看不到一個答案,所以想我會問,道歉,如果這是一個重複。使用宏來分割word文檔,我該如何指定名稱?

我在Word 2010中使用郵件合併來填充表格。這創建了數百頁的相同表格,但每個頁面都有不同的數據。然後,我使用宏將單詞文檔分成單頁文檔。我的宏知識是非常有限,但我已經得到它的工作,我知道如何修改名稱,如果我只想要一個標準的數字的事情,但我想要的是它使用的字段之一表作爲名字,所以他們都有他們的識別號作爲他們的文件名。

這是我有宏的代碼:

Sub BreakOnPage() 
    ' Used to set criteria for moving through the document by page. 
    Application.Browser.Target = wdBrowsePage 

    For i = 1 To ActiveDocument.BuiltInDocumentProperties("Number of Pages") 

     'Select and copy the text to the clipboard. 
     ActiveDocument.Bookmarks("\page").Range.Copy 

     ' Open new document to paste the content of the clipboard into. 
     Documents.Add 
     Selection.Paste 
' Removes the break that is copied at the end of the page, if any. 
     Selection.TypeBackspace 
     ChangeFileOpenDirectory "F:\MyWork" 
     DocNum = DocNum + 1 
     ActiveDocument.SaveAs FileName:="test_" & DocNum & ".doc" 
     ActiveDocument.Close 

     ' Move the selection to the next page in the document. 
     Application.Browser.Next 
    Next i 
    ActiveDocument.Close savechanges:=wdDoNotSaveChanges 
End Sub 

但我不知道如何使它拿起場在文檔中。任何幫助將非常感謝!

此外,當它將它分成單獨的文檔時,它似乎在它的底部添加了一個空白頁面,所以當我打開其中一個文件時,我有我的表格,但後面有一個空白頁面,不知道如何擺脫這一點,所以提示也會有很大的幫助。

+0

至於中值在分割文檔時添加空白頁,請參閱[此鏈接](http://answers.microsoft.com/zh-cn/office/forum/officeversion_other-customize/getting-blank-page-when-splitting-large-file-入/ 27f14c14-e49c-4a77-8ad4-763c41474ddd)。 – Michael

回答

0

你沒有指定你需要哪個小區,但這應該讓你開始:

Dim sCellText As String 
sCellText = ActiveDocument.Tables(1).Rows(1).Cells(1).Range 
sCellText = Left$(sCellText, Len(sCellText) - 2) 

ActiveDocument.SaveAs FileName:="sCellText & ".doc" 

這將文檔保存爲第一單元的第一行

相關問題