How to retrieve data from Excel and add to Word

我怕爱的太早我们不能终老 提交于 2020-04-16 07:46:30

问题


I have a Word template file that retrieves data from an Excel file to populate a form.

The code looks something like this:

Dim myXL As Object
Set myXL = Getobject("myfile.xls")
myXL.Application.Visible = True
myXL.Parent.Windows(1).Visible = True

This code works fine in Office 2010 and 2007, but when I try it in 2013, it gives run time error 9 which is an array subscript error. When I check the Windows array it has zero elements, so error is correct.

How do I achieve the same result in 2013?

The next bit of code attempts to access the Worksheets("mysheet") and if I skip the Visible = True line accessing the worksheet gives runtime error 1004.

Any help with fixing this would be greatly appreciated.


回答1:


To make the code work on Office 2013 I added the line myXL.Activate before trying to make the Window visible. So the code becomes:

Dim myXL As Object
Set myXL = Getobject("myfile.xls")
myXL.Application.Visible = True
myXL.Activate
myXL.Parent.Windows(1).Visible = True

This fixed the run-time error, and the code went back to working well.




回答2:


To retrieve data from an Excel

An Example would be...

Option Explicit
Sub ExcelData()
    Dim xlApp As Object ' Application
    Dim xlBook As Object ' Workbook
    Dim xlSht As Object ' Worksheet
    Dim FilePath As String

    FilePath = "C:\Temp\Book1.xlsx"

    Set xlApp = CreateObject("Excel.Application")
    Set xlBook = xlApp.Workbooks.Open(FilePath)
    Set xlSht = xlBook.Sheets("Sheet1")

    With ActiveDocument
        .Content = xlSht.Range("A1").Value
    End With

    xlApp.Visible = True

    Set xlApp = Nothing
    Set xlBook = Nothing
End Sub


来源:https://stackoverflow.com/questions/36167639/how-to-retrieve-data-from-excel-and-add-to-word

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!