多个分节符 - 如何仅将页眉和页脚添加到第一节?

Multiple section breaks - how to add header and footer only to 1st section?

我编写了一段代码,用于向文档添加页眉和页脚。该文档有多个部分(分页符),我只想将页眉和页脚添加到第一页。 在代码中,我选择了第 (1) 部分,但宏将页眉和页脚添加到每个部分的第一页。

你知道怎么解决吗?我试过了,不知道。代码如下:

With wordApp.ActiveDocument
    .PageSetup.DifferentFirstPageHeaderFooter = True
    .Sections(1).Footers(wdHeaderFooterFirstPage) _
    .Range.InsertBefore _
    Cells(18, i)
End With

With wordApp.ActiveDocument
    .PageSetup.DifferentFirstPageHeaderFooter = True
    .Sections(1).Headers(wdHeaderFooterFirstPage) _
    .Shapes(1).TextFrame.TextRange.Text = Cells(15, i)
End With

首先,我们需要解决您对术语的错误使用。分页符仅添加新页面,它们不会创建部分。创建新节的是分节符。

默认情况下,新部分中的页眉和页脚 link 编辑到上一节中。当您在后面的部分中编辑页眉或页脚时,您可以在页眉和页脚选项卡上看到这一点。

您可以使用以下代码删除 link,该代码非常古老,可以追溯到 Link 到 Previous 被称为 Same as Previous

的时候
Public Sub ZapTheSAP()
   Dim sec As Section
   Dim hdrftr As HeaderFooter

   For Each sec In ActiveDocument.Sections
      For Each hdrftr In sec.Headers
         hdrftr.LinkToPrevious = False
      Next hdrftr

      For Each hdrftr In sec.Footers
         hdrftr.LinkToPrevious = False
      Next hdrftr
   Next sec
End Sub

您只需要:

With wordApp.ActiveDocument
  .Sections(1).PageSetup.DifferentFirstPageHeaderFooter = True
  .Sections(2).PageSetup.DifferentFirstPageHeaderFooter = False
  With .Sections(1)
    .Headers(wdHeaderFooterFirstPage).Range.Text = Cells(15, i)
    .Footers(wdHeaderFooterFirstPage).Range.InsertBefore Cells(18, i)
  End With
End With