Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 144
Default Setting Autofilter using code

Hi all,

I have a spreadsheet where as part of my macro I'm copying data from one
sheet to another. Because the sheet which is being copied from will have
Autofilter set on row 1 and because at the time the macro runs the data may
be filtered on a particular value, I believe I need to turn off autofilter so
that I can copy all of the cells in the spreadsheet -- I then need to turn
autofilter back on. Currently I'm doing this with the code below. I tried
using Help to see if I could do something like "If Autofilter is set to True,
then set to False...." but wasn't able to find information regarding doing
this. Is there a way to do this? Thanks in advance!

'FYI - The "Open Transactions by Member ID" sheet has Autofilter set prior
to the macro being run

With Sheets("Open Transactions by Member ID")
.Rows("1:1").AutoFilter
.Cells.Copy
End With
With Sheets("Open Trans by Member ID WIP")
.Cells.PasteSpecial (xlPasteAll)
End With
With Sheets("Open Transactions by Member ID")
.Rows("1:1").AutoFilter
End With


--
Robert
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 35,218
Default Setting Autofilter using code

You can use this to show all the data.

With Worksheets("Open Transactions by Member ID")
If .FilterMode Then
.ShowAllData
End If
'now do the copy|Paste
End With

robs3131 wrote:

Hi all,

I have a spreadsheet where as part of my macro I'm copying data from one
sheet to another. Because the sheet which is being copied from will have
Autofilter set on row 1 and because at the time the macro runs the data may
be filtered on a particular value, I believe I need to turn off autofilter so
that I can copy all of the cells in the spreadsheet -- I then need to turn
autofilter back on. Currently I'm doing this with the code below. I tried
using Help to see if I could do something like "If Autofilter is set to True,
then set to False...." but wasn't able to find information regarding doing
this. Is there a way to do this? Thanks in advance!

'FYI - The "Open Transactions by Member ID" sheet has Autofilter set prior
to the macro being run

With Sheets("Open Transactions by Member ID")
.Rows("1:1").AutoFilter
.Cells.Copy
End With
With Sheets("Open Trans by Member ID WIP")
.Cells.PasteSpecial (xlPasteAll)
End With
With Sheets("Open Transactions by Member ID")
.Rows("1:1").AutoFilter
End With

--
Robert


--

Dave Peterson
  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 144
Default Setting Autofilter using code

Thanks Dave!!

--
Robert


"Dave Peterson" wrote:

You can use this to show all the data.

With Worksheets("Open Transactions by Member ID")
If .FilterMode Then
.ShowAllData
End If
'now do the copy|Paste
End With

robs3131 wrote:

Hi all,

I have a spreadsheet where as part of my macro I'm copying data from one
sheet to another. Because the sheet which is being copied from will have
Autofilter set on row 1 and because at the time the macro runs the data may
be filtered on a particular value, I believe I need to turn off autofilter so
that I can copy all of the cells in the spreadsheet -- I then need to turn
autofilter back on. Currently I'm doing this with the code below. I tried
using Help to see if I could do something like "If Autofilter is set to True,
then set to False...." but wasn't able to find information regarding doing
this. Is there a way to do this? Thanks in advance!

'FYI - The "Open Transactions by Member ID" sheet has Autofilter set prior
to the macro being run

With Sheets("Open Transactions by Member ID")
.Rows("1:1").AutoFilter
.Cells.Copy
End With
With Sheets("Open Trans by Member ID WIP")
.Cells.PasteSpecial (xlPasteAll)
End With
With Sheets("Open Transactions by Member ID")
.Rows("1:1").AutoFilter
End With

--
Robert


--

Dave Peterson

  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 144
Default Setting Autofilter using code

Hi Dave,

I took the code with a slight variation to have the Autofilter set when it
is not currently set...this code is not working. Any ideas?

With Sheets("Open Transactions by Member ID")
If .FilterMode < True Then
.Rows("1:1").AutoFilter
Else
End If
End With

--
Robert


"Dave Peterson" wrote:

You can use this to show all the data.

With Worksheets("Open Transactions by Member ID")
If .FilterMode Then
.ShowAllData
End If
'now do the copy|Paste
End With

robs3131 wrote:

Hi all,

I have a spreadsheet where as part of my macro I'm copying data from one
sheet to another. Because the sheet which is being copied from will have
Autofilter set on row 1 and because at the time the macro runs the data may
be filtered on a particular value, I believe I need to turn off autofilter so
that I can copy all of the cells in the spreadsheet -- I then need to turn
autofilter back on. Currently I'm doing this with the code below. I tried
using Help to see if I could do something like "If Autofilter is set to True,
then set to False...." but wasn't able to find information regarding doing
this. Is there a way to do this? Thanks in advance!

'FYI - The "Open Transactions by Member ID" sheet has Autofilter set prior
to the macro being run

With Sheets("Open Transactions by Member ID")
.Rows("1:1").AutoFilter
.Cells.Copy
End With
With Sheets("Open Trans by Member ID WIP")
.Cells.PasteSpecial (xlPasteAll)
End With
With Sheets("Open Transactions by Member ID")
.Rows("1:1").AutoFilter
End With

--
Robert


--

Dave Peterson

  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 35,218
Default Setting Autofilter using code

..Filtermode indicates if the existing filter has been used--usually some rows
are hidden.

If you want to remove the arrows and reapply them, you can use:

with worksheets("open transactions by member id")
.AutoFilterMode = False
.rows(1).autofilter
end with

Although, I would be more explicit with the range to filter.

Dim LastRow as long
Dim LastCol as long
with worksheets("open transactions by member id")
lastrow = .cells(.rows.count,"A").end(xlup).row
lastcol = .cells(1,.columns.count).end(xltoleft).column
.AutoFilterMode = False
.range("A1",.cells(lastrow,lastcol)).autofilter
end with

or even

with worksheets("open transactions by member id")
.AutoFilterMode = False
.usedrange.columns.autofilter
end with



robs3131 wrote:

Hi Dave,

I took the code with a slight variation to have the Autofilter set when it
is not currently set...this code is not working. Any ideas?

With Sheets("Open Transactions by Member ID")
If .FilterMode < True Then
.Rows("1:1").AutoFilter
Else
End If
End With

--
Robert

"Dave Peterson" wrote:

You can use this to show all the data.

With Worksheets("Open Transactions by Member ID")
If .FilterMode Then
.ShowAllData
End If
'now do the copy|Paste
End With

robs3131 wrote:

Hi all,

I have a spreadsheet where as part of my macro I'm copying data from one
sheet to another. Because the sheet which is being copied from will have
Autofilter set on row 1 and because at the time the macro runs the data may
be filtered on a particular value, I believe I need to turn off autofilter so
that I can copy all of the cells in the spreadsheet -- I then need to turn
autofilter back on. Currently I'm doing this with the code below. I tried
using Help to see if I could do something like "If Autofilter is set to True,
then set to False...." but wasn't able to find information regarding doing
this. Is there a way to do this? Thanks in advance!

'FYI - The "Open Transactions by Member ID" sheet has Autofilter set prior
to the macro being run

With Sheets("Open Transactions by Member ID")
.Rows("1:1").AutoFilter
.Cells.Copy
End With
With Sheets("Open Trans by Member ID WIP")
.Cells.PasteSpecial (xlPasteAll)
End With
With Sheets("Open Transactions by Member ID")
.Rows("1:1").AutoFilter
End With

--
Robert


--

Dave Peterson


--

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
autofilter macro setting tjb Excel Worksheet Functions 0 June 11th 08 05:36 PM
Setting autofilter at runtime AD108 Excel Programming 2 June 1st 06 08:46 AM
Excel to allow color setting for autofilter drop-down arrow patriceadsl Excel Discussion (Misc queries) 1 April 25th 05 01:16 PM
Setting autofilter criteria peterDavey Excel Programming 1 June 11th 04 09:47 AM
Setting AutoFilter to 1 row of data Greg Bloom Excel Programming 1 September 26th 03 11:09 PM


All times are GMT +1. The time now is 04:54 PM.

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

About Us

"It's about Microsoft Excel"