从Excel VBA将页眉/页脚插入到新创建的Word文档中

用户名

我正在尝试从Excel中的内容创建Word文档。当我打算进军单词添加页眉/页脚,我得到一个错误“运行时错误5941:集合的请求的成员不存在”上线.Headers(wdHeaderFooterPrimary).Range.Text =“头文字”。请提出我该如何处理?

Sub CreateFAQWord()
Dim myRow As Long
Dim objWord As Object
Dim objDoc As Object
Dim question As String
Dim answer As String
Dim rng As Range
Dim i As Long

Set objWord = CreateObject("Word.Application")
objWord.Visible = True
Set objDoc = objWord.Documents.Add()

objWord.Selection.Style = objDoc.Styles("Title")
objWord.Selection.Paragraphs.Alignment = 1
objWord.Selection.TypeText Text:="Title"
objWord.Selection.TypeParagraph
objWord.Selection.TypeParagraph

With objDoc
    .Styles.Add ("BoldNormal")
        With .Styles("BoldNormal").Font
            .Name = "Calibri"
            .Size = 11
            .Bold = True
            .Italic = True
            .Underline = False
        End With
End With
myRow = 2
' Value 2 here is the column in which questions are present. Change accordingly
While Cells(myRow, 2).Value <> ""
    ' Value 9 here is the column in which Yes/No is present. Change accordingly
    If Cells(myRow, 9) = "Yes" Then
        objDoc.Activate
        question = Cells(myRow, 2)
        answer = Cells(myRow, 3)
        objWord.Selection.Style = objDoc.Styles("BoldNormal")
        objWord.Selection.TypeText Text:=question
        objWord.Selection.TypeParagraph
        objWord.Selection.Style = objDoc.Styles("Normal")
        objWord.Selection.TypeText Text:=answer
        objWord.Selection.TypeParagraph
        objWord.Selection.TypeParagraph
    End If
    myRow = myRow + 1
Wend

For i = 1 To objDoc.Sections.Count
   With objDoc.Sections(i)
       .Headers(wdHeaderFooterIndex.wdHeaderFooterPrimary).Range.Text = "Header text"
       .Footers(wdHeaderFooterIndex.wdHeaderFooterPrimary).Range.Text = "Footer text"
   End With
Next

' Change the location path of where you want the document to be saved as needed
objDoc.SaveAs "C:\Users\2021282\Desktop\FAQ"
End Sub
尼克拉斯

我不认为您可以使用.Range.Text
相反尝试分配对范围对象的引用。若要进行此工作,您需要在引用下添加“ Microsoft Word XX.X对象库”。

Dim objRange as Word.Range

For i = 1 To objDoc.Sections.Count
With objDoc.Sections(i)

    Set objRange = .Headers(wdHeaderFooterIndex.wdHeaderFooterPrimary).Range
    objRange = "Header Text"
    Set objRange = Nothing

    Set objRange = .Footers(wdHeaderFooterIndex.wdHeaderFooterPrimary).Range
    objRange = "Footer text"
    Set objRange = Nothing
End With
Next

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

将Word文档的内容从excel VBA复制到新创建的Word文档

VBA Excel - 在 Word 中取消链接页眉和页脚

通过Excel Vba在两个新创建的Word文档之间切换不会发生

Excel 到 Word VBA 导出 - 未创建 Word 文档

Excel VBA代码从模块到工作表新创建的工作表的传输

Excel VBA中的查找功能仅引用新创建的工作表

如何在 VBA 中设计代码以引用以前在 Excel 中新创建的工作簿?

在Word文档中从Excel VBA插入换行符

将多个表格从 Excel 插入到 Word VBA

Excel VBA 中心页眉/页脚“左对齐”

使用Excel宏VBA将Word文档中的第一个表复制到Excel

使用Excel VBA在Word文档页脚中查找/替换文本

使用脚本编辑器将Excel文件从Google云端硬盘复制到新创建的文件夹

链接到新创建的 Excel 文件

如何使用Excel VBA通过Matlab在Excel中制作页眉和页脚

从Word到Excel的VBA

将Word文档中的Excel图表分组

使用excel VBA在word页脚中添加表格

使用Excel VBA更改Powerpoint中页眉/页脚日期和时间的格式

在Excel中为页眉和页脚创建自定义零件

使用 Word VBA 将特定的 Excel 单元格值提取到 Word 文档中

将图表作为图像从 Excel 插入 Word 文档

从VBA中的Word文件创建Excel文件

如何使用excel-vba删除部分以创建Word文档

从Excel文档获取页脚

在SQL中重新创建移动中位数和移动模式Excel公式

重新创建一个Excel图形

替换Excel文件的页眉和页脚中的文本

字符串太长,将数据从 Excel 复制到 Word 文档中