1

Hi I am trying to copy Cells from excel sheet and populating word document. I want to copy text from excel cells to a specific place in word document. I am able to store the text from excel cells in a string, but not sure how to make it store in a word placeholder or bookmark that I have mentioned in my word doc. This is what I have so far:

Set ws = xlBook.Worksheets("DIP Main")
    Tmp = ws.Cells(25, "C").Value
    .Text = Tmp
    .Execute Replace:=("Placeholder1")
   ' [Placeholder1] = Tmp.Text
   ' MyDOc.Fields("Placeholder1") = Tmp.Valu

e

Tmp is storing value from excel, but I am not able to replace and print it in the placeholder on my word document, or if there is any other way of printing Tmp string in a specific location of word doc that would work too. Also im not declaring any placeholder in my code, I am not sure if i am supposed to. I have created place holder in the word document itself called "Placeholder1". I am using VBA word to code it.

For Full code please refer to this: How to copy excel range from a sheet and place it into a specific place it into a specific place in word using word vba

2 Answers 2

0

this is the code in Word that inserts text at a bookmark

    ActiveDocument.Bookmarks("Placeholder1").Range = "abc123"
Sign up to request clarification or add additional context in comments.

1 Comment

how would I make it equal to the value stored in string?
0

This ought to help you on your way.

Sub ExcelToWord()

    ' define all Excel variables you are going to use:
    Dim Wb As Workbook
    Dim Ws As Worksheet
    Dim Cell As Range

    ' define all Word variables you are going to use:
      ' since you are running the code from Excel
      ' you must specify "Word" for each data type
    Dim WdApp As Word.Application
    Dim Doc As Word.Document

    ' define variables which you can use in either application:
      ' (if you aren't sure, define separate ones)
    Dim Tmp As String
    Dim R As Long
    Dim i As Integer

    ' replace this name with the name & path of your own Word document
    Tmp = "E:\PVT Archive\Class 1\1-2017 (Jan 2019)\STO 170317.docm"
    If Dir(Tmp) = "" Then                           ' Check if the file exists
        MsgBox "The file doesn't exist.", _
               vbInformation, "Invalid file or path name"
        Exit Sub
    End If
    Set WdApp = CreateObject("Word.Application")    ' open Word
    WdApp.Visible = True
    Set Doc = WdApp.Documents.Open(Tmp)             ' open the document

    If Not Doc.Bookmarks.Exists("Amark") Then
        MsgBox "The bookmark 'Amark' doesn't exist.", _
               vbInformation, "Can't find bookmark"
        Exit Sub
    End If

    Set Wb = ActiveWorkbook
    Set Ws = Wb.Worksheets("DIP Main")
    Tmp = Ws.Cells(25, "C").Value

    Doc.Bookmarks("Amark").Range.Text = Tmp
End Sub

Note that the bookmark will be replaced with the next. It doesn't exist thereafter. If you wish to re-use it you must use code to set it again.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.