VBA Excel заменяет текст Word значением ячейки Excel - PullRequest
0 голосов
/ 27 апреля 2020

Доброе утро,

Я хотел бы заменить адрес в Word на адрес, размещенный в ячейке Excel.

Моя ситуация выглядит так, как показано на рисунке ниже:

enter image description here

У меня есть адрес в Excel, и я хочу вставить его в скобку Word, основанную на ячейке таблицы.

Есть некоторые Решения:

Запись в документ Word из Excel VBA

Вставка строки из Excel в Word с использованием word-VBA

VBA из Word в Excel

Макросы VBA: замена текста в Excel в Word

, что отличается от моей ситуации.

My код пока выглядит следующим образом:

 Sub RamsOpen()
 Dim appWD As Word.Application
 Set appWD = New Word.Application
 Dim docWD As Word.Document
 Set docWD = appWD.Documents.Open(ActiveWorkbook.path & "\RAMS.docx.docm")
 appWD.Visible = True

 Sheets("Frontsheet").Range("D18").Copy

 docWD.Content.InsertAfter Range("A1")

 End Sub

Документ Word открывается, но я не знаю, куда был скопирован мой текст.

Кажется, здесь есть подсказка бога:

https://exceloffthegrid.com/controlling-word-from-excel-using-vba/

но применимо к пустому документу Word, я думаю.

1 Ответ

1 голос
/ 27 апреля 2020

Самый простой способ, которым я знаю о вставке данных в документ Word, это использование объекта Bookmarks ( Документация здесь ) ( wordmvp здесь - очень легко следовать).

Принимая это во внимание, поскольку вы управляете этим из Excel, я бы поместил значение вашего адреса в переменную String и присвоил бы эту переменную закладке в документе.

Что-то как:

Dim appWD As Word.Application
Set appWD = New Word.Application
Dim docWD As Word.Document
Set docWD = appWD.Documents.Open(ActiveWorkbook.path & "\RAMS.docx.docm")
appWD.Visible = True
Dim ExcelAddressValue as String

ExcelAddressValue = Sheets("Frontsheet").Range("D18").Value

docWd.Bookmarks("YourBookmarkNameHere").Range.Text = ExcelAddressValue

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