微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

每次出现不同的值时插入分页符

如何解决每次出现不同的值时插入分页符

我正在尝试在 D 列中找到不同值的行上方插入一个分页符。我发现这段代码作为开始很有帮助。它正在搜索特定单词并在那里创建分页符。但是如果这个词并不总是被定义呢?有人可以帮助更新此代码或提供有关在找到不同值时如何创建分页符的反馈吗? 示例表如下。它应该在 D 列中每个不同的发票编号上方创建一个分页符。如果循环会更容易,也请帮忙。

Sub InsertPageBreakAtDifValue()
 Dim x As Integer
 Dim LR As Integer
 LR = Cells(Rows.Count,1).End(xlUp).Row
  For x = 1 To LR
  If Cells(x,1).Value = "Invoice Total" Then
 ActiveSheet.HPageBreaks.Add Before:=Rows(x + 1)
  End If
  Next
End Sub
价值 数量 发票
10 100 10 12345
20 100 10 12345
30 100 10 12345
40 100 10 56789
50 100 10 56789
60 100 10 56789
70 100 10 78910

解决方法

首先确保数据范围按发票编号排序。

Dim invNo As Integer
Dim prevInvNo As Integer

prevInvNo = 0
For x = 1 to LR
    invNo = Cells(x,1).Value
    ' if invoice number has changed...
    if prevInvNo <> invNo then
        ' don't insert a page break before the first invoice number
        if prevInvNo > 0 then
            ActiveSheet.HPageBreaks.Add Before:=Rows(x + 1)
        end if
        prevInvNo = invNo  
    end if
next x

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。