当列b更改值时,Excel将启动新页面打印

时间:2011-07-02 05:20:27

标签: excel excel-2007

更改列b时是否有任何启动新页面打印的功能或方法?

例如,当b列将值从David更改为Robert时,会启动一个新页面。

1 个答案:

答案 0 :(得分:2)

我不确定你的意思 但是当用户更改B列的单元格时,以下代码将打印工作表

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column = 2 And Target.Columns.Count = 1 Then
        ThisWorkbook.ActiveSheet.PrintOut
    End If
End Sub

评论后编辑

所以这就是你所需要的:

Sub PaginateBasedOnColB()
    Dim lngRowsCount As Long
    Dim lngCounter As Long

    lngRowsCount = ThisWorkbook.ActiveSheet.UsedRange.Rows.Count

    MsgBox lngRowsCount

    For lngCounter = 1 To lngRowsCount

        If ThisWorkbook.ActiveSheet.Cells(lngCounter, 2) <> _
            ThisWorkbook.ActiveSheet.Cells(lngCounter + 1, 2) Then
            ThisWorkbook.ActiveSheet.HPageBreaks.Add (ThisWorkbook.ActiveSheet.Range("B" & lngCounter + 1))
        End If

    Next lngCounter
End Sub