VBA: редактирование документа Word с помощью Excel приводит к ошибке времени выполнения 438: объект не поддерживает это свойство или метод - PullRequest
0 голосов
/ 26 июня 2018

Несмотря на тяжелый поиск в Google, я не могу понять, что с этим не так.Я все еще пропускаю ссылку или что-то?Если вы видите, в чем заключается ошибка, я буду вам всегда благодарен!

Ссылки:

  • Visual Basic для приложений
  • Библиотека объектов Microsoft Excel 16.0
  • OLE Automation
  • Библиотека объектов Microsoft Office 16.0
  • Элемент управления RefEdit
  • Библиотека объектов Microsoft Word 16.0

Переменные:

Public appWord As Word.Application
Public sapmWord As Word.Document

Dim asNimi As String 'in this current sub

Код:

On Error Resume Next

Set appWord = GetObject(, "Word.Application")
If Err <> 0 Then
    Set appWord = CreateObject("Word.Application")
End If
On Error GoTo 0
appWord.Visible = True
Set sapmWord = appWord.documents.Open("C:\ThisIsWorking\andDocOpens.docx")
'sapmWord.Activate 'doesn't make a difference

With sapmWord
    Selection.EndKey Unit = wdStory 'this line is first line to give an error. With or without a dot in the beginning of line.
    Selection.TypeText Text:=asNimi 'this line too, if previous is commented
'...and so on!
End With

sapmWord.Close savechanges:=True
Set appWord = Nothing
Set sapmWord = Nothing

Ответы [ 3 ]

0 голосов
/ 26 июня 2018

sapmWord - текстовый документ. Документ Word не имеет метода selection. Объект приложения Word имеет его, так что, вероятно, вы имеете в виду (и да, вам нужно '.')

With appWord 
    .Selection.EndKey Unit:= wdStory 
    .Selection.TypeText Text:=asNimi 
    '...and so on!
End With
0 голосов
/ 27 июня 2018

В конце концов у меня не было выбора, кроме как добавить закладки в документ Word и заполнить их VBA. Я до сих пор не понимаю, почему эти оригинальные коды не работают в моем коде, хотя они работают для других. Спасибо всем за помощь, может быть, кто-то еще получает ответы здесь в любом случае.

0 голосов
/ 26 июня 2018

Чтобы использовать With, вы должны ссылаться на членов с .:

With sapmWord
    .Selection.EndKey Unit = wdStory
    .Selection.TypeText Text:=asNimi
End With
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...