Excel 2010 Macro Export to Word
Export to Word transfers data from Excel to the first table found in a Word document. It uses early binding, so a reference must be set up in the VB Editor using Tools, References to the Microsoft Word object library:
Sub Export_Data_Word_Table()
Dim wdApp As Word.Application
Dim wdDoc As Word.Document
Dim wdCell As Word.Cell
Dim i As Long
Dim wbBook As Workbook
Dim wsSheet As Worksheet
Dim rnData As Range
Dim vaData As Variant
Set wbBook = ThisWorkbook
Set wsSheet = wbBook.Worksheets(“Sheet1”)
With wsSheet
Set rnData = .Range(“A1:A10”)
End With
‘Add the values in the range to a one-dimensional variant-array.
vaData = rnData.Value
‘Here we instantiate the new object.
Set wdApp = New Word.Application
‘Here the target document resides in the same folder as the workbook.
Set wdDoc = wdApp.Documents.Open(ThisWorkbook.Path & “\Test.docx”)
•Import data to the first table and in the first column of a ten-row table.
For Each wdCell In wdDoc.Tables(1).Columns(1).Cells
i = i + 1
wdCell.Range.Text = vaData(i, 1)
Next wdCell
•Save and close the document.
With wdDoc
.Save
.Close
End With
•Close the hidden instance of Microsoft Word.
wdApp.Quit
•Release the external variables from the memory
Set wdDoc = Nothing
Set wdApp = Nothing
MsgBox •The data has been transfered to Test.docx.Ž, vbInformation
End Sub
