Excel VBA从excel修改word doc - 集合成员错误

时间:2016-07-26 02:57:48

标签: vba excel-vba excel

在代码下面运行会显示“所请求的集合成员不存在”所有搜索都没有产生解决方案。

Sub WordTemplate()


Dim objWordapp As Object
Set objWordapp = CreateObject("Word.Application")
fileStr = "\\int.chc.concepts.co.nz\users\CBotting\Documents\VBA programming\SD Basic Template.docx"

objWordapp.Documents.Open FileName:=fileStr
With objWordapp.Selection.Sections(1).Headers(wdHeaderFooterPrimary)
    If .Range.Text <> vbCr Then
        MsgBox .Range.Text
    Else
        MsgBox "Header is empty"
    End If
End With

End Sub

我尝试了许多不同的解决方案来解决标题对象

2 个答案:

答案 0 :(得分:0)

运行早期绑定方法,因此需要在VBA工具菜单中设置Microsoft Word 16.0对象库。现在有效

答案 1 :(得分:0)

问题不在于后期绑定。问题是如果没有对Microsoft Word xx.x对象库的引用,VBA就不知道wdHeaderFooterPrimary的值。我告诉VBA wdHeaderFooterPrimary的值,那么你的代码可以在没有引用Word库集的情况下工作。

Sub WordTemplate()
    Const wdHeaderFooterPrimary = 1

    Dim objWordapp As Object
    Set objWordapp = CreateObject("Word.Application")
    fileStr = "\\int.chc.concepts.co.nz\users\CBotting\Documents\VBA programming\SD Basic Template.docx"

    objWordapp.Documents.Open Filename:=fileStr
    With objWordapp.Selection.Sections(1).Headers(wdHeaderFooterPrimary)
        If .Range.Text <> vbCr Then
            MsgBox .Range.Text
        Else
            MsgBox "Header is empty"
        End If
    End With

End Sub