Я пытаюсь настроить рабочий код с раннего связывания на позднее связывание, чтобы избежать проблем с пользователями с разными ссылочными версиями или отсутствующих справочных проблем.Специально избегая раннего связывания для ссылки Microsoft Word.
Согласно приведенному ниже коду, я использую Microsoft Excel для создания объекта Microsoft Word и открытия документов Word для обработки.Я изменил переменные на объекты, но зациклился на -> Установить wrdDocument = wrdApplication.Documents.Open (strPath), где он открывает слово, но затем вешает трубку и сообщает, что ожидает ресурс для завершения действия.
Что мне нужно сделать, чтобы заставить это работать через позднюю привязку?Я пытался добавить значение, не устанавливая его, но не знал, что должно произойти.Я уверен, что это как-то связано с тем, что документ не нужно устанавливать одинаково с переменной, но я не уверен, как ...
Любая помощь очень ценится!
Function AddRemoveWatermark()
'Word Variables
Dim wrdApplication As Object
Dim wrdDocument As Object
Set wrdApplication = CreateObject("Word.Application")
Dim strDocumentName As String
Dim strPath As String
Dim strBBPath As String
Dim lngCount As Long
Dim fso As Object
strBBPath = "C:\Users\" & (Environ$("Username")) & "\AppData\Roaming\Microsoft\Document Building Blocks\1033\" & lngMicrosoftVersion & "\Built-In Building Blocks.dotx"
Set fso = CreateObject("Scripting.FileSystemObject")
' Open the file dialog
With Application.FileDialog(1) 'msoFileDialogOpen
.AllowMultiSelect = True
.Show
'Set wrdApplication = New Word.Application
AddRemoveWatermark = .SelectedItems.Count
' Display paths of each file selected
For lngCount = 1 To .SelectedItems.Count
strPath = .SelectedItems(lngCount)
Set wrdDocument = wrdApplication.Documents.Open(strPath)
strDocumentName = wrdDocument.FullName 'Record the document name
wrdApplication.Templates.LoadBuildingBlocks
Next lngCount
End With
End Sub