Excel允许您为工作表指定页眉和页脚。您可能需要将这些页眉和页脚从一个工作表复制到另一个工作表。在工作簿中这样做相对容易,但是从一个工作簿到另一个工作簿这样做可能会更加艰巨。

如果页眉和页脚是一个,您在新工作簿中使用了很多,而您主要关心的是在这些新工作簿中使用页眉和页脚(而不是在现有工作簿中),那么最好的方法是创建模板工作簿。只需根据需要设置一个工作簿,包括页眉和页脚的规范。然后,将工作簿另存为Excel模板(XLTX格式)。然后,您可以基于此模板创建工作簿,它将具有您想要的页眉和页脚。

将页眉和页脚从一个工作簿中的工作表复制到另一个工作表中的一种方法是使用复制和粘贴的传统编辑方法。换句话说,您可以选择要复制的标题材料,按Ctrl + C,在目标工作表中显示标题,然后按Ctrl + V。这种方法的缺点是它可能涉及很多步骤。毕竟,每个页眉有三个部分(左,中和右),每个页脚有三个部分。这意味着您必须执行六个复制和粘贴操作才能复制完整的页眉和页脚。

将页眉和页脚从一个工作簿复制到另一个工作簿的另一种方法涉及使用本机Excel命令制作工作表的副本。

请按照下列步骤操作:

。打开目标工作簿;您要将页眉和页脚复制到的那个。

。打开工作簿是您的页眉和页脚的来源,并确保显示所需的工作表。

。显示功能区的“主页”选项卡。

。单击“格式”工具(在“单元格”组中),然后选择“移动”或“复制工作表”。 Excel将显示“移动或复制”对话框。 (请参见图1。)

。使用“到书”下拉列表,选择在步骤1中打开的目标工作簿。 。在“工作表之前”区域中,指示要将工作表复制到的位置。

。确保选中创建副本复选框。

。单击确定。工作表将被复制到目标工作簿。

。关闭步骤2中的源工作簿。 。在目标工作簿中,显示刚复制的工作表。

。在窗口底部的选项卡区域中,右键单击并选择“选择所有图纸”。现在,所有工作表都已选中。

。显示功能区的“页面布局”选项卡。

。单击页面设置组右下角的小图标。 Excel将显示“页面设置”对话框。

。确保已选择“页眉/页脚”选项卡。 (请参见图2。)

。使用“页眉和页脚”下拉列表,选择刚复制的工作表中使用的页眉和页脚。

。单击确定。

。删除您在步骤1到8中复制的工作表。

本质上,您要做的是复制包含所需页眉和页脚的工作表,然后将该页眉和页脚复制到工作簿中的其他工作表,然后删除原始工作表。

虽然这些步骤可以正常工作,但如果您需要将页眉和页脚复制到许多不同的工作簿中,则可能会很乏味。在这种情况下,使用宏进行复制是比较明智​​的方法。以下两个宏可用于在一个简单的步骤中复制页眉和页脚。您需要做的就是显示源工作表并使用GetHeaders宏。此宏将页眉和页脚信息复制到字符串变量。然后,您可以依次显示要具有相同的页眉和页脚的每个工作表,并运行DoHeaders宏。

Option Explicit

Dim strHeadLeft As String Dim strHeadCenter As String Dim strHeadRight As String Dim strFootLeft As String Dim strFootCenter As String Dim strFootRight As String Dim bGotHeaders As Boolean

Sub GetHeaders()

With ActiveSheet.PageSetup         strHeadLeft = .LeftHeader         strHeadCenter = .CenterHeader         strHeadRight = .RightHeader         strFootLeft = .LeftFooter         strFootCenter = .CenterFooter         strFootRight = .RightFooter         bGotHeaders = True     End With End Sub

如果需要,您甚至可以将宏分配给工具栏按钮或快速访问工具栏,这可以使它们更加方便地复制页眉和页脚。

Sub DoHeaders()

If bGotHeaders Then         With ActiveSheet.PageSetup             .LeftHeader = strHeadLeft             .CenterHeader = strHeadCenter             .RightHeader = strHeadRight             .LeftFooter = strFootLeft             .CenterFooter = strFootCenter             .RightFooter = strFootRight         End With     Else         MsgBox "Select the sheet with the " _             & "headers you want to copy," _             & vbCrLf & "then run 'GetHeaders'", _             vbExclamation, "No Headers In Memory"

End If End Sub

如果您有很多工作表和工作簿想要将页眉和页脚复制到其中,则可以使用另一种宏方法。下面的宏会将页眉和页脚从活动工作表复制到所有其他打开的工作簿中的所有其他工作表。

换句话说,如果要将页眉和页脚从当前工作表复制到分布在15个不同工作簿中的150个其他工作表中,您需要做的就是同时打开15个工作簿,显示源工作表,然后运行宏。

Sub CopyHeaderFooter()

Dim PS As PageSetup     Dim WB As Workbook     Dim WS As Worksheet

Set PS = ActiveSheet.PageSetup     For Each WB In Workbooks         For Each WS In WB.Worksheets             With WS.PageSetup                 .LeftHeader = PS.LeftHeader                 .CenterHeader = PS.CenterHeader                 .RightHeader = PS.RightHeader                 .LeftFooter = PS.LeftFooter                 .CenterFooter = PS.CenterFooter                 .RightFooter = PS.RightFooter             End With         Next     Next End Sub

注意:

如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。

链接:/ excelribbon-ExcelTipsMacros [点击此处在新的浏览器标签中打开该特殊页面]。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(12519)适用于Microsoft Excel 2007、2010、2013、2016、2019和Office 365中的Excel。您可以在此处为Excel的较早菜单界面找到此技巧的版本:

链接:/ excel-Copying_Headers_and_Footers [复制页眉和页脚]。