Сохранение документа Word с помощью ячейки Excel Ссылка: VBA Excel - PullRequest
0 голосов
/ 14 марта 2019

В настоящее время я копирую активный лист Excel и сохраняю данные из этой активной таблицы Excel в предварительно отформатированный документ Word. Этот предварительно отформатированный документ Word затем сохраняется с определенным именем файла.

В начальной настройке VBA я объявил переменную с именем myfilename, которая содержит значение даты. (01022019)

Я хотел бы узнать, как я могу объединить значение myfilename с сохраненным именем файла с помощью команды SaveAs, как показано в коде. Например, сохраненным файлом будет тест 01022019. Это простая задача при сохранении электронной таблицы Excel с использованием VBA, но не при сохранении текстового документа с использованием VBA.

Я приложил некоторый код в надежде, что смогу найти решение:

Sub SaveAsWord()


Dim LastRow As Long
Dim objWord, objDoc As Object
Dim myfilename As String
myfilename = Sheets("Import").Range("B2")



Set wordApp = CreateObject("word.Application")
wordApp.Documents.Open "C:\test\test\worddocument.docx"
wordApp.Visible = True

With wDoc

wordApp.ActiveDocument.SaveAs Filename:="C:\test\test.docx"

End With

End Sub

1 Ответ

0 голосов
/ 14 марта 2019

Вам необходимо использовать & для объединения пути (String) и имени файла (Variable), как показано ниже. Также вам необходимо указать FileFormat.

Попробуйте это

wordApp.ActiveDocument.SaveAs2 Filename:="C:\test\test\" & myfilename & ".docx", _
                               FileFormat:=wdFormatXMLDocument

или

wordApp.ActiveDocument.SaveAs2 Filename:="C:\test\test" & myfilename & ".docx", _
                               FileFormat:=wdFormatXMLDocument

Выберите один из указанных выше вариантов в зависимости от того, где вы хотите его сохранить.

Если вы запаздываете, то объявите об этом в самом верху.

Const wdFormatXMLDocument as Integer = 12
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...