Private Sub Document_Open()
Dim objExcel As Object
Dim FileName As String
Dim cc As ContentControl
FileName = "Z:\" & "\Data.xlsx"
Set objExcel = CreateObject("Excel.Application")
Set exWb = objExcel.Workbooks.Open(FileName)
For Each cc In ActiveDocument.SelectContentControlsByTag("Name")
cc.Range.Text = exWb.Sheets("4").Cells(1, 2)
Next
exWb.Close
Set exWb = Nothing
End Sub
该文件保存为 Word启用宏的模板,因此双击它会创建一个名为 Document1 的新文件,但宏似乎无法运行,因为内容控件为空白。但是,如果我通过" Macros"运行相同的代码(在开发人员下),表单填写。
答案 0 :(得分:1)
我发现它是Document_New而不是Document_Open
Private Sub Document_New()
Dim objExcel As Object
Dim FileName As String
Dim cc As ContentControl
FileName = "Z:\" & "\Data.xlsx"
Set objExcel = CreateObject("Excel.Application")
Set exWb = objExcel.Workbooks.Open(FileName)
For Each cc In ActiveDocument.SelectContentControlsByTag("Name")
cc.Range.Text = exWb.Sheets("4").Cells(1, 2)
Next
exWb.Close
Set exWb = Nothing
End Sub