Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
DiscussionsAccessExcelInfoPathOutlookPowerPointPublisherWord
DirectoryUser Groups
Related Topics
Outlook ExpressInternet ExplorerWindowsMS Server ProductsMore Topics ...

MS Office Forum / Excel / Programming / June 2006

Tip: Looking for answers? Try searching our database.

Search by filter using macro

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
tmwilkin - 30 Sep 2005 19:01 GMT
I have a spreadsheet containing a list of products for reference purposes.  
This list will often be utilized by searching for data in one column to see
if it exists and in many cases there will be multiple matches.  

I can do this by using a Custom auto filter using the "contains" operator.  
In an effort to not make people go through the process of clicking the filter
arrow, selecting "custom", etc. ... I was hoping I could just set up a cell
where a macro would grab that value and use it for the search criteria - that
way they could type the search keywords and hit a button for results.

I've found though that although while recording the macro I can copy and
paste the value from a cell into the filter area by using shortcut keys, the
macro script shows it as a static value, not a paste command.  Therefore each
time I run the macro using different keywords in the cell, it doesn't paste
the value of that cell in the filter area, it only just puts down the value
that was input when I created the macro.  Cell references don't seem to be
available to use there either.  I know this process would be easier in
Access, but I would prefer to keep this in Excel.

Any ideas?  Thanks.
Tom Ogilvy - 30 Sep 2005 19:28 GMT
    Selection.AutoFilter Field:=1, Criteria1:="=*" & Range("M13").Value _
      & "*"

Signature

Regards,
Tom Ogilvy

> I have a spreadsheet containing a list of products for reference purposes.
> This list will often be utilized by searching for data in one column to see
[quoted text clipped - 16 lines]
>
> Any ideas?  Thanks.
tmwilkin - 30 Sep 2005 20:24 GMT
Worked perfectly!  Thanks Tom.

>      Selection.AutoFilter Field:=1, Criteria1:="=*" & Range("M13").Value _
>        & "*"
[quoted text clipped - 27 lines]
> >
> > Any ideas?  Thanks.
wilby31 - 11 Oct 2005 00:48 GMT
Hi, I am looking to do what I think is the exact same thing.  I have a
Excel database organized by a serial number and I want the user to b
able to type the number in a specific cell and the total list to filte
down to just the rows associated with the desired serial number.

I am unsure how to implement the advice you gave the person who aske
this of you in the original post.  Perhaps you could provide some mor
detail as how to use your code snippet.  I am vaguely familar wit
macro recording.  If you feel I should learn more about recordin
macros, any advice on where to start would be appreciated.

Thank you,
Brent

Tom Ogilvy Wrote:
> Selection.AutoFilter Field:=1, Criteria1:="=*" & Range("M13").Value _
> & "*"
[quoted text clipped - 45 lines]
> >
> > Any ideas?  Thanks
gmr7 - 18 Jan 2006 21:21 GMT
I have similar problem with the "contains" operator in a custom autofilter
macro, but a little different than previous question. I have a list of values
13.0069, 13.0070, 14.0051, 14.0065, 15.0063 & so on (a pretty long list).   I
want to filter based upon the first 2 numbers (13, 14, 15, ...).   I would
rather not setup the criteria up for each, is there anyway this can be done
in one or a few statements like you did previously.

I guess I should also ask this real quick, is there a limit to the # of
cells one can filter?
Signature

gmr7

>      Selection.AutoFilter Field:=1, Criteria1:="=*" & Range("M13").Value _
>        & "*"
[quoted text clipped - 27 lines]
> >
> > Any ideas?  Thanks.
Dave Peterson - 18 Jan 2006 21:31 GMT
If those are really numbers, can't you just filter by:

Greater than or equal to 13
and
less than or equal to 16
(or whatever??)

You can record a macro when you do it if you need the code.

> I have similar problem with the "contains" operator in a custom autofilter
> macro, but a little different than previous question. I have a list of values
[quoted text clipped - 43 lines]
> > >
> > > Any ideas?  Thanks.

Signature

Dave Peterson

gmr7 - 19 Jan 2006 18:49 GMT
I am stuck on the code for each number that I want autofiltered and copied
(i.e., 13, 14, up 70).  This is the  autofilter portion of the code I have,
can I make this code for the multiple numbers?



   Selection.AutoFilter Field:=1, Criteria1:=">=13", Operator:=xlAnd, _

       Criteria2:="<14"

Signature

gmr7

> If those are really numbers, can't you just filter by:
>
[quoted text clipped - 52 lines]
> > > >
> > > > Any ideas?  Thanks.
Dave Peterson - 19 Jan 2006 19:41 GMT
How about:
   Selection.AutoFilter Field:=1, Criteria1:=">=13", Operator:=xlAnd, _
       Criteria2:="<=70"

> I am stuck on the code for each number that I want autofiltered and copied
> (i.e., 13, 14, up 70).  This is the  autofilter portion of the code I have,
[quoted text clipped - 67 lines]
> >
> > Dave Peterson

Signature

Dave Peterson

gmr7 - 19 Jan 2006 21:03 GMT
That works for the range 13-70, but I am looking to do filter for *13 and
then copy that range elsewhere, then do the the *14 and copy that range
elsewhere, and so on.  
Signature

gmr7

> How about:
>     Selection.AutoFilter Field:=1, Criteria1:=">=13", Operator:=xlAnd, _
[quoted text clipped - 71 lines]
> > >
> > > Dave Peterson
Dave Peterson - 19 Jan 2006 21:39 GMT
Debra Dalgleish and Ron de Bruin have samples that you may like.  Ron's addin
may be sufficient right out of the box.

Debra's site:
http://www.contextures.com/excelfiles.html

Create New Sheets from Filtered List -- uses an Advanced Filter to create
separate sheet of orders for each sales rep visible in a filtered list; macro
automates the filter. AdvFilterRepFiltered.xls 35 kb

or

Update Sheets from Master -- uses an Advanced Filter to send data from
Master sheet to individual worksheets -- replaces old data with current.
AdvFilterCity.xls 55 kb

And Ron de Bruin's easyfilter.
http://www.rondebruin.nl/easyfilter.htm

> That works for the range 13-70, but I am looking to do filter for *13 and
> then copy that range elsewhere, then do the the *14 and copy that range
[quoted text clipped - 81 lines]
> >
> > Dave Peterson

Signature

Dave Peterson

chris100 - 28 Jun 2006 16:14 GMT
I did this a while ago yet i can't find the post i found it from again
:(

With reference to the above method of filtering, how can the method b
adapted to have say, "greater than or equal to cell reference A4."
tried playing with the above examples but i must be doing somethin
wrong.

Any help greatly appreciated.

Chri
chris100 - 28 Jun 2006 19:27 GMT
Hi again,

Sorry for bringing this back up to the top again but i'm desperate t
find a solution for this so i canfinish this project for implementatio
by Monday (aaah)

Thanks again,

Chri
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.