Я использую следующий код, однако, файл PDF загружается, несмотря на то, что ячейка "BX3" с выбранной "Word".
Sub Download_Click ()
Dim response response = MsgBox ( «Вы уверены, что хотите загрузить форму?», VbYesNo, «Сохранить форму») Если response = vbNo, то выйти из под-конца, если
Dim WS1 As Set Sheets Set WS1 = Sheets («Вывод данных») Dim CustRow , CustCol, lastRow, TemplRow, Ссылка, RefRow As Long Dim DocLo c, TagName, TagValue, TemplName, FileName As String Dim CurDt, LastAppDt в качестве даты Dim WordDo c, WordApp, OutApp, OutMail в качестве объекта Dim WordContent в качестве слова .Range
TemplRow = WS1.Range("CI1").Value
TemplName = WS1.Range("BV3").Value
Reference = WS1.Range("CA3").Value
DocLoc = WS1.Range("CG2").Value
On Error Resume Next
Set WordApp = GetObject("Word.Application")
If Err.Number <> 0 Then
Err.Clear
Set WordApp = CreateObject("Word.Application")
WordApp.Visible = True
End If
lastRow = WS1.Range("A9999").End(xlUp).Row
CustRow = Reference + 2
Set WordDoc = WordApp.Documents.Open(FileName:=DocLoc, ReadOnly:=False)
For CustCol = 1 To 70
TagName = WS1.Cells(2, CustCol).Value
TagValue = WS1.Cells(CustRow, CustCol).Value
With WordDoc.Content.Find
.Text = TagName
.Replacement.Text = TagValue
.Wrap = wdFindContinue
.Execute Replace:=wdReplaceAll
End With
Next CustCol
If WS1.Cells("BX3").Value = "PDF" Then
FileName = ThisWorkbook.Path & "\" & WS1.Range("B" & CustRow).Value & "_" & WS1.Range("C" & CustRow).Value & ".pdf"
WordDoc.ExportAsFixedFormat OutputFileName:=FileName, ExportFormat:=wdExportFormatPDF
WordDoc.Close False
Else
FileName = ThisWorkbook.Path & "\" & WS1.Range("B" & CustRow).Value & "_" & WS1.Range("C" & CustRow).Value & ".docx"
WordDoc.SaveAs FileName
End If
WordApp.Quit
MsgBox («Ваша форма была загружена».)
End Sub