tags:

views:

45

answers:

1

In Excel VBA is there a way to determine the width in units of a printed page?

Dim remainingWidth as Double

remaningWidth = <property that gives printed page width> - _  
                ActiveSheet.PageSetup.LeftMargin - _  
                ActiveSheet.PageSetup.RightMargin - _  
                Range("A:H").Width
+1  A: 

Here are all the members of PageSetup.. My initial thought is to write a function that takes in Orientation and PaperSize and returns the page width. For example:

If ActiveSheet.Orientation = xlLandscape And ActiveSheet.PaperSize = xlPaperLetter Then
    dblPaperWidth = 15840 '11 inches in twips
Else
    ...
End If
JohnK813