Sub Fyf() '按指定列号插入分页符
Dim i%, Co%, Ro%, A%, b%, c%, arr, V As Variant, j%
V = InputBox(prompt:=" 请输入3个列号,不足3个请重复输入,全以"",""分隔", Title:="提示", ypos:=80)
Dim start As Double: start = Timer
On Error GoTo VV
ActiveSheet.ResetAllPageBreaks
Co = Cells(1, 1).End(xlToRight).Column
Ro = Cells(1, 1).End(xlDown).Row
arr = Range("A1:" & Split(Cells(1, Co + 1).Address, "$")(1) & Ro)
A = Range(Split(V, ",")(0) & 1).Column
b = Range(Split(V, ",")(1) & 1).Column
c = Range(Split(V, ",")(2) & 1).Column
For i = 3 To UBound(arr)
arr(i, Co + 1) = 0: arr(i - 1, Co + 1) = 0
If arr(i, A) <> arr(i - 1, A) Or arr(i, b) <> arr(i - 1, b) Or arr(i, c) <> arr(i - 1, c) Then
ActiveSheet.HPageBreaks.Add Before:=Cells(i, 1)
j = j + 1
End If
Next
MsgBox "共计分页: " & j & "次" & Chr(10) & "共计耗时:" & Format(Timer - start, "0.00") & "秒。"
VV: End Sub