ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Asking user to set a printarea when none is defined (https://www.excelbanter.com/excel-programming/272469-re-asking-user-set-printarea-when-none-defined.html)

Michael J. Malinsky

Asking user to set a printarea when none is defined
 
Here's what I came up with:

First, in a module, paste the following code:

Sub CountRange()

Dim CellCount As Integer

CellCount = Selection.Count
If CellCount <= 1 Then
UserForm1.Show
End If

End Sub

Then create a UserForm with a RefEdit control and a CommandButton (RefEdit1
and CommandButton1). Double click the command button to bring up the
default CommandButton1_Click code and paste the following between the
Private Sub and End Sub lines:

Dim SetRange As Range

MsgBox RefEdit1.Value
Range(RefEdit1.Value).Select
Set SetRange = ActiveWindow.RangeSelection
ActiveSheet.PageSetup.PrintArea = SetRange.Address

Basically the CountRange counts the number of cells selected on the
worksheet and if less than 2 cells are selected pops up the form. The form
has a RefEdit control that allows the user to select a range on the
worksheet. When the CommandButton is pressed, the variable SetRange is set
to the range selected in RefEdit then the PrintArea is set.

HTH
Mike.

--
Michael J. Malinsky


"Andy" wrote in message
...
I am trying to write a routine that asks the user to set a
print area if one has not already been set.

At the start of the routine, I have used this code;

If ActiveSheet.PageSetup.PrintArea = "" Then
Load UserForm1
UserForm1.Show
End If

However, this doesn't seem to work if a range is selected
for printing.
Is there a way to check whether "a range has been selected
and if not prompt the user to do so"?





All times are GMT +1. The time now is 03:44 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com