Hi all, I currently have a master Entry page that the user enters their information into.

This then transposes onto a hidden worksheet which is ultimately the 'print' version of the Entry Page. This is 600 or more rows, however, once filtered, can become as small as 25 rows. I have the entire range (600 rows) as a Named Range and when you view to print, it places it's page breaks in accordingly.

When the user clicks the Print button, it unhides the print worksheet, filters on cells that do not equal 0 and prints.

The issue I have is that when you do press the Print button, even though the print version is filtered, it still creates a page break based on the original size of the Named Range (600 rows) rather than adjusting the page breaks based on the filtered rows (ie - 25).

All users have a printer of which if you view the paper size in Printer Properties, it reflects 'User Defined',however, I can't record this via a macro because the printer itself is external to Excel.

If, however, I manually go to print the worksheet and go into the Printer Properties and click User Defined under paper size (almost to retrigger that it's User Defined), it prints with the page breaks in the adjusted range.

Is there anyway through my VBA Code, I can write that the paper size must be Custom User Defined?

Any help would be appreciated.