View Single Post
  #5   Report Post  
Posted to microsoft.public.excel.worksheet.functions
OssieMac OssieMac is offline
external usenet poster
 
Posts: 2,510
Default auto filter use with command button

I assume that where you are using Target, you mean the ActiveCell. Try
replacing Target with ActiveCell throughout your code. (You can't use target
with the Command Button).

If still not working, let me know which line it is failing on and what the
error message you are getting.
--
Regards,

OssieMac


"deen" wrote:

Hi,

I was Changed but is not working fine,


Private Sub CommandButton1_Click()
Const inputCell = "$B$1" ' must have the $ symbols
If ActiveCell.Address < inputCell Then
Exit Sub
End If
Application.ScreenUpdating = False
Range("B2").Select ' get read to set AutoFilter
If IsEmpty(Target) Or _
Trim(Target) = "" Or _
UCase(Trim(Target)) = "ALL" Then
'need to show all
Selection.AutoFilter field:=2
Else
'need to filter by B1 entry
Selection.AutoFilter field:=2,
Criteria1:=UCase(Trim(Target.Value))
End If
Range(inputCell).Select
Application.ScreenUpdating = True
End Sub















On Apr 21, 11:29 am, OssieMac
wrote:
Should have included that you would need to run the code from the Command
button event not worksheet change event.
--
Regards,

OssieMac



"OssieMac" wrote:
Not sure if I really understand the problem but I am interpreting it as you
want to run the code from a command button instead of a worksheet change
event. If this is correct then you can no longer use Target as the
Activecell. Assuming that you want to test for the Activecell = inputCell
then you could try the following in lieu of testing for Target:-


Const inputCell = "$B$1" ' must have the $ symbols
If ActiveCell.Address < inputCell Then
Exit Sub
End If


and the rest of your code here.


--
Regards,


OssieMac


"deen" wrote:


Dear All,


This program run in the work sheet , its working fine. but need to use
the program in use of command button is not working fine ,


can any body sort out issue(same program run thru command button).


Private Sub Worksheet_Change(ByVal Target As Range)
Const inputCell = "$B$1" ' must have the $ symbols
If Target.Address < inputCell Then
Exit Sub
End If
Application.ScreenUpdating = False
Range("B2").Select ' get read to set AutoFilter
If IsEmpty(Target) Or _
Trim(Target) = "" Or _
UCase(Trim(Target)) = "ALL" Then
'need to show all
Selection.AutoFilter field:=2
Else
'need to filter by B1 entry
Selection.AutoFilter field:=2,
Criteria1:=UCase(Trim(Target.Value))
End If
Range(inputCell).Select
Application.ScreenUpdating = True
End Sub


Regars,


Deen- Hide quoted text -


- Show quoted text -