#1   Report Post  
Dennis
 
Posts: n/a
Default Steve Bullins

Using XL 2003 and 2000

The following Function is from Steve Bullen via j-walk.com.
It was written for XL 97 up

Obviously, there is something probably fairly obvious that I am missing. If
fact when I get that answer you can say DA!

I placed this VBA code in "ThisWorkbook"

Then I placed this formula into cell A1: =FilterCriteria(A3)
Cell A3 contains the Autofilter down-arrow for column A

No matter what I do I get a #NAME error.

I checked spelling; protection; duplicate function names, etc.

It seems that XL does not "see" this Function.

Is it a protected name?

************************************************** ***********
Function FilterCriteria(Rng As Range) As String
'By Stephen Bullen
Dim Filter As String
Filter = ""
On Error GoTo Finish
With Rng.Parent.AutoFilter
If Intersect(Rng, .Range) Is Nothing Then GoTo Finish
With .Filters(Rng.Column - .Range.Column + 1)
If Not .On Then GoTo Finish
Filter = .Criteria1
Select Case .Operator
Case xlAnd
Filter = Filter & " AND " & .Criteria2
Case xlOr
Filter = Filter & " OR " & .Criteria2
End Select
End With
End With
Finish:
FilterCriteria = Filter
End Function
************************************************** ***********

TIA Dennis
  #2   Report Post  
Dennis
 
Posts: n/a
Default



"Dennis" wrote:

Using XL 2003 and 2000

The following Function is from Steve Bullen via j-walk.com.
It was written for XL 97 up

Obviously, there is something probably fairly obvious that I am missing. If
fact when I get that answer you can say DA!

I placed this VBA code in "ThisWorkbook"

Then I placed this formula into cell A1: =FilterCriteria(A3)
Cell A3 contains the Autofilter down-arrow for column A

No matter what I do I get a #NAME error.

I checked spelling; protection; duplicate function names, etc.

It seems that XL does not "see" this Function.

Is it a protected name?

************************************************** ***********
Function FilterCriteria(Rng As Range) As String
'By Stephen Bullen
Dim Filter As String
Filter = ""
On Error GoTo Finish
With Rng.Parent.AutoFilter
If Intersect(Rng, .Range) Is Nothing Then GoTo Finish
With .Filters(Rng.Column - .Range.Column + 1)
If Not .On Then GoTo Finish
Filter = .Criteria1
Select Case .Operator
Case xlAnd
Filter = Filter & " AND " & .Criteria2
Case xlOr
Filter = Filter & " OR " & .Criteria2
End Select
End With
End With
Finish:
FilterCriteria = Filter
End Function
************************************************** ***********

TIA Dennis

  #3   Report Post  
JulieD
 
Posts: n/a
Default

Hi Dennis

what happens if you put it in a normal module (insert / module) rather than
ThisWorkbook?

Cheers
JulieD

"Dennis" wrote in message
...
Using XL 2003 and 2000

The following Function is from Steve Bullen via j-walk.com.
It was written for XL 97 up

Obviously, there is something probably fairly obvious that I am missing.
If
fact when I get that answer you can say DA!

I placed this VBA code in "ThisWorkbook"

Then I placed this formula into cell A1: =FilterCriteria(A3)
Cell A3 contains the Autofilter down-arrow for column A

No matter what I do I get a #NAME error.

I checked spelling; protection; duplicate function names, etc.

It seems that XL does not "see" this Function.

Is it a protected name?

************************************************** ***********
Function FilterCriteria(Rng As Range) As String
'By Stephen Bullen
Dim Filter As String
Filter = ""
On Error GoTo Finish
With Rng.Parent.AutoFilter
If Intersect(Rng, .Range) Is Nothing Then GoTo Finish
With .Filters(Rng.Column - .Range.Column + 1)
If Not .On Then GoTo Finish
Filter = .Criteria1
Select Case .Operator
Case xlAnd
Filter = Filter & " AND " & .Criteria2
Case xlOr
Filter = Filter & " OR " & .Criteria2
End Select
End With
End With
Finish:
FilterCriteria = Filter
End Function
************************************************** ***********

TIA Dennis



  #4   Report Post  
Dave Peterson
 
Posts: n/a
Default

Don't put the code in the ThisWorkbook module.

Put it in a regular General module.



Dennis wrote:

Using XL 2003 and 2000

The following Function is from Steve Bullen via j-walk.com.
It was written for XL 97 up

Obviously, there is something probably fairly obvious that I am missing. If
fact when I get that answer you can say DA!

I placed this VBA code in "ThisWorkbook"

Then I placed this formula into cell A1: =FilterCriteria(A3)
Cell A3 contains the Autofilter down-arrow for column A

No matter what I do I get a #NAME error.

I checked spelling; protection; duplicate function names, etc.

It seems that XL does not "see" this Function.

Is it a protected name?

************************************************** ***********
Function FilterCriteria(Rng As Range) As String
'By Stephen Bullen
Dim Filter As String
Filter = ""
On Error GoTo Finish
With Rng.Parent.AutoFilter
If Intersect(Rng, .Range) Is Nothing Then GoTo Finish
With .Filters(Rng.Column - .Range.Column + 1)
If Not .On Then GoTo Finish
Filter = .Criteria1
Select Case .Operator
Case xlAnd
Filter = Filter & " AND " & .Criteria2
Case xlOr
Filter = Filter & " OR " & .Criteria2
End Select
End With
End With
Finish:
FilterCriteria = Filter
End Function
************************************************** ***********

TIA Dennis


--

Dave Peterson
  #5   Report Post  
Dennis
 
Posts: n/a
Default

Thanks Julie & Dave

I believe that the instructions said "ThisWorkbook" but I should have know
better. This issue has come up before in my XL VBA history - but I forgot
about it!

You now can pin the DA! award on my tail.

Dennis

"Dave Peterson" wrote:

Don't put the code in the ThisWorkbook module.

Put it in a regular General module.



Dennis wrote:

Using XL 2003 and 2000

The following Function is from Steve Bullen via j-walk.com.
It was written for XL 97 up

Obviously, there is something probably fairly obvious that I am missing. If
fact when I get that answer you can say DA!

I placed this VBA code in "ThisWorkbook"

Then I placed this formula into cell A1: =FilterCriteria(A3)
Cell A3 contains the Autofilter down-arrow for column A

No matter what I do I get a #NAME error.

I checked spelling; protection; duplicate function names, etc.

It seems that XL does not "see" this Function.

Is it a protected name?

************************************************** ***********
Function FilterCriteria(Rng As Range) As String
'By Stephen Bullen
Dim Filter As String
Filter = ""
On Error GoTo Finish
With Rng.Parent.AutoFilter
If Intersect(Rng, .Range) Is Nothing Then GoTo Finish
With .Filters(Rng.Column - .Range.Column + 1)
If Not .On Then GoTo Finish
Filter = .Criteria1
Select Case .Operator
Case xlAnd
Filter = Filter & " AND " & .Criteria2
Case xlOr
Filter = Filter & " OR " & .Criteria2
End Select
End With
End With
Finish:
FilterCriteria = Filter
End Function
************************************************** ***********

TIA Dennis


--

Dave Peterson

Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
Counting specific text in a cell Steve Excel Worksheet Functions 7 January 26th 05 05:51 PM


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

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"