ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Search Using Autofilter - Field (https://www.excelbanter.com/excel-programming/295987-search-using-autofilter-field.html)

Ben Allen

Search Using Autofilter - Field
 
I have numerous options a user can pick and depending on this the field of
an autofilter must change, my code does not appear to work. Any Ideas?
Thanks
Private Sub Search_Click()
Range("B3:L10").Select
'Set Field
Dim myField As Integer
If DateOp = True Then
Set myField = 1
ElseIf TourRef = True Then
Set myField = 2
ElseIf Country = True Then
Set myField = 3
ElseIf Place = True Then
Set myField = 4
ElseIf Spaces = True Then
Set myField = 10
End If
Selection.AutoFilter Field:=myFeild, Criteria1:=Search.Value,
Operator:=xlAnd

End Sub

--
Cheers,
Ben

Remove your.tonsils to reply
"You only live once but if you do it right once is enough!"



Dave Peterson[_3_]

Search Using Autofilter - Field
 
First, put

Option Explicit

At the top of your module. This'll force you to declare all your variables. It
may sound like more work, but it'll save you time searching for typos:

Set myField = 1
Field:=myFeild

myFeild is misspelled.

And drop those Set's. You use those when you work with objects--ranges,
worksheets, workbooks, not simple integers/longs/strings.



Ben Allen wrote:

I have numerous options a user can pick and depending on this the field of
an autofilter must change, my code does not appear to work. Any Ideas?
Thanks
Private Sub Search_Click()
Range("B3:L10").Select
'Set Field
Dim myField As Integer
If DateOp = True Then
Set myField = 1
ElseIf TourRef = True Then
Set myField = 2
ElseIf Country = True Then
Set myField = 3
ElseIf Place = True Then
Set myField = 4
ElseIf Spaces = True Then
Set myField = 10
End If
Selection.AutoFilter Field:=myFeild, Criteria1:=Search.Value,
Operator:=xlAnd

End Sub

--
Cheers,
Ben

Remove your.tonsils to reply
"You only live once but if you do it right once is enough!"


--

Dave Peterson



All times are GMT +1. The time now is 12:17 AM.

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