worksheet.vPageBreaks.Count returns zero (0)


New Member
Jul 18, 2019

I am attempting to determine a method of jumping to the first row of the next page, where the page breaks are automatically generated by Excel (A4 page size, automatic height/width).
I figured it would be possible to do this by comparing the current row with data from vPageBreaks in the sheet, however the process seems to be struggling to pickup information about these page breaks.

I have tried two methods so far:

  1. searching each subsequent row for the XlPageBreak enumeration, until a row is found with value not equal to -4142
  2. search array of vPageBreaks in worksheet for next vPageBreak after current row

However, the following problems were encountered for each method respectively.

  1. Although examining the row using the immediate window returned -4105 (xlPageBreakAutomatic), the same row when examined as part of the ongoing operation returned -4142 (xlPageBreakNone) just like every other row. The page break did not seem to register.
  2. No page breaks are recognised:

Input: Debug.Print ("Count: " & CStr(Worksheets(2).VPageBreaks.Count))
Output: Count: 0

Some assistance would be appreciated.

Some videos you may like

Excel Facts

Square and cube roots
The =SQRT(25) is a square root. For a cube root, use =125^(1/3). For a fourth root, use =625^(1/4).


MrExcel MVP
Mar 10, 2004
Maybe you mean horizontal page breaks...

Debug.Print ("Count: " & CStr(Worksheets(2).HPageBreaks.Count))


Watch MrExcel Video

Forum statistics

Latest member

This Week's Hot Topics

  • Timer in VBA - Stop, Start, Pause and Reset
    [CODE=vba][/CODE] Option Explicit Dim CmdStop As Boolean Dim Paused As Boolean Dim Start Dim TimerValue As Date Dim pausedTime As Date Sub...
  • how to updates multiple rows in muliselect listbox
    Hello everyone. I need help with below code. code is only chaning 1st row in mulitiselect list box. i know issue with code...
  • Delete Row from Table
    I am trying to delete a row from a table using VBA using a named range to find what I need to delete. My Range is finding the right cell. In the...
  • Assigning to a variable
    I have a for each block where I want to assign the value in column 5 of the found row to the variable Serv. [CODE=vba] For Each ws In...
  • Way to verify information
    Hi All, I don't know what to call this formula, and therefore can't search. I have a spreadsheet with information I want to reference...
  • Active Cell Address – Inactive Sheet
    How to use VBA to get the cell address of the active cell in an inactive worksheet and then place that cell address in a location on the current...