Откройте файлы Publisher в папке и сохраните как документы Word
Мне нужно открыть большое количество документов, которые в данный момент сохранены в Publisher (2003, 2007 и 2010) и преобразовать их в документы Word. Это простые одностраничные текстовые документы, но у меня есть около 1000 для конвертации. Вот код, который у меня есть:
Public Sub Pub_To_Word()
Dim FS As New FileSystemObject
Dim pubApp As Publisher.Application
' Reference Library pointing to:
' Microsoft Scripting Runtime
' Microsoft Word 14.0 Object Library
Dim FSfolder As Folder
Dim MyFile As File
Dim mydoc As Document
Dim sFolderPath As String
Dim Table As Table
sFolderPath = "I:\My Documents\Publisher Test"
Set FSfolder = FS.GetFolder(sFolderPath)
For Each MyFile In FSfolder.Files
Set mydoc = pubApp.Open(MyFile)
Application.DisplayAlerts = False
mydoc.SaveAs Filename:MyFile & ".docx", FileFormat:=wdFormatXMLDocument
mydoc.Close savechanges:=True
pubApp.DisplayAlerts = True
End If
Next
End
End Sub
Код отлаживается в
FileFormat:=wdFormatXMLDocument
Я не могу пройти через это.
1 ответ
Не знаю, почему вы делаете это в Excel, но:
- Похоже, вы пропустили двоеточие в
Filename:MyFile & ".docx"
, - Это допустимые форматы файлов для Document.SaveAs: https://msdn.microsoft.com/EN-US/library/office/ff940508.aspx. Я думаю, что вам, возможно, придется сохранить как RTF (pbFileRTF = 6) или HTML и преобразовать его в.docx через взаимодействие Word. Эта, по общему признанию, устаревшая статья также указывает на это: https://support.microsoft.com/en-us/kb/302939. (Возможно, вам придется использовать число 6 вместо определенной константы, поскольку вы делаете это в Excel)
Изменить: wdFormatXMLDocument может быть не определен, так как вы запускаете макрос из Publisher, поэтому проще всего было бы заменить его на 12