2013-11-27 3 views
0

Я пробовал искать это здесь и не вижу ответа, поэтому подумал, что попрошу, извини, если это дубликат.Использование макроса для разделения слова документа, как указать имя?

Я использую слияние, чтобы заполнить таблицу в Word 2010. Это создало сотни страниц одной и той же таблицы, но с разными данными в каждом из них. Затем я использую макрос, чтобы разделить документ слова на отдельные документы на страницу. Мои знания о макросах очень ограничены, но у меня это работает, и я знаю, как изменить имя, если мне просто нужна стандартная пронумерованная вещь, но я хочу, чтобы она использовала одно из полей table как имя, поэтому все они будут иметь свой идентификационный номер в качестве имени файла.

Это код, который я получил за макро:

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 

Но я понятия не имею, как сделать это подобрать поле в документе. Любая помощь будет очень высоко ценится!

Кроме того, когда это разделяет его на отдельные документы, кажется, что он добавляет пустую страницу в нижнюю часть его, поэтому, когда я открываю один из файлов, у меня есть таблица, а затем пустая страница под этим, t выяснить, как избавиться от этого, так что советы по этому будут огромной помощью.

+0

Что касается добавлена ​​пустая страница при разделении документа, см. [эта ссылка] (http://answers.microsoft.com/en-us/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" 

Это позволит сохранить документ в качестве значения первой ячейки в первом ряду

 Смежные вопросы

  • Нет связанных вопросов^_^