Print condition and autofilter

I

Ixtreme

Hi,

On a large sheet with data I have a print button that a user can
click. On the sheet I have another button that creates an autofilter.
What I would like to have is that if the user selects the print button
and NO selection has been made in the autofilter, the routine will
exit sub.

somethin like :

if ActiveSheet.PageSetup.PrintArea =
ActiveSheet.AutoFilter.Range.Address is empty then exit sub.
 
G

Guest

This is from the VBA help:

Remarks
This property is True if the worksheet contains a filtered list in which
there are hidden rows.

Example
This example displays the filter status of Sheet1 in a message box.

If Worksheets("Sheet1").FilterMode = True Then
MsgBox "Filter mode is on"
Else
MsgBox "Filter mode is off"
End If

Not sure that's what you're looking for, but thought it might be.

Keith
 
I

Ixtreme

I know, but that is not what I meant. With this you can only see if
the the autofilter is active. However, what I want is that the user
has at least one field selected ie made a filter on 1 field. If not,
exit sub.
 
G

Guest

I see. Try this:

Sub AutoFilterTest()

Dim MyFilterCriteria As Boolean
MyFilterCriteria = False

For Each a In Sheets("Sheet1").AutoFilter.Filters
If a.On Then MyFilterCriteria = True
Next a

If MyFilterCriteria = True Then
MsgBox ("Ok to Print.")
Else
MsgBox ("Not Ok to Print.")
End If

End Sub

And replace my MsgBox ("Ok to Print.") line with the print command you wish
to use. Also change "Sheet1" to the name of your sheet.

Hope this helps.

Keith
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top