Excel每页加标题+合并单元格跨页调整
Attention: 本分享基于win7系统和office 2013。
做一些内容很多的跨页表格时,经常遇到如图1所示的问题。表格的第一页中有一列是合并单元格,但是该合并单元格是跨页显示的,导致第一页的末尾部分和第二页起始部分缺少表格框线,且合并单元格中的内容“ @陪我去圣所叭 ”也只在第一页显示,不会出现在第二页的合并单元格中。

太丑了!!!作为一个合格的打工人,解决这个问题势在必得!

Step 1:给表格每一页添加列名。一般这种跨页的表格,需要在每一页添加表头(也就是列名)。在图2“顶端标题行”处添加需要在每一页开头出现的标题。预览没问题后就点确定。

Step 2:复制如下代码至记事本,将记事本保存为后缀为.bas的文件。(如“test.bas”)
Sub test()
Dim P, MergeAddress As String, PageCell As Range, MergeValue
ActiveWindow.View = xlPageBreakPreview
For Each P In ActiveSheet.HPageBreaks
Set PageCell = Cells(P.Location.Row - 1, ActiveCell.Column)
If PageCell.MergeCells And Not Intersect(Cells(P.Location.Row, ActiveCell.Column), PageCell.MergeArea) Is Nothing Then
MergeAddress = PageCell.MergeArea.Address
MergeValue = PageCell.MergeArea(1).Value
PageCell.MergeArea.UnMerge
Range(Range(MergeAddress)(1), PageCell).Merge
With Range(PageCell.Offset(1, 0), Cells(Split(MergeAddress, "$")(4), ActiveCell.Column))
.Merge
.Value = MergeValue
End With
End If
Next
ActiveWindow.View = xlNormalView
End Sub
Step 3:“文件”→“选项”→“自定义功能区”,在“开发者选项”前打勾,这样该选项就会出现在Excel顶端的菜单栏。

Step 4:点击“Visual Basic”

Step 5:选中表格所在的sheet,单击右键,选择“导入文件”,选择刚才新建的“test.bas”文件。

Step 6:回到Excel表格,点击“宏”。

Step 7:选中“test.bas”文件,并点击“执行”。即可完成对跨页合并单元格的设置。

Step 8:接着需要选中含有合并单元格的一列,为单元格设置框线,点击预览对表格进行检查调整即可。显示效果如图8。
Tips:有的经验分享会建议在图2中勾选“网格线”选项。但我并不推荐。因为这个选项可能会使一些不需要出现网格线的地方出现网格,且不方便调整。

Good Luck 打工人!(End)