Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 25
Default Speed Up Macro

I have a macro that takes over 45 min to run at times. Is there a better way
to do this, or speed it up at all. The macro I use is as follows, it does
need to be specific to the column and the rows that it is currently set to...

Sub Button15_Click()
ActiveSheet.Unprotect
For Each cell In Range("AL35:AL609")
cell.EntireRow.Hidden = cell.Value = 0
Next cell
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub

Thanks,

Sean
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 415
Default Speed Up Macro

Sean,
Are you sure there is nothing else happening, because I cannot see how that
code take 45 minutes to run ?
Setting .displaypageBreaks=False would, but still...you could do that code
manulally in 5 minutes.

NickHK

"Sean" ...
I have a macro that takes over 45 min to run at times. Is there a better
way
to do this, or speed it up at all. The macro I use is as follows, it does
need to be specific to the column and the rows that it is currently set
to...

Sub Button15_Click()
ActiveSheet.Unprotect
For Each cell In Range("AL35:AL609")
cell.EntireRow.Hidden = cell.Value = 0
Next cell
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub

Thanks,

Sean



  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 6,953
Default Speed Up Macro

Sub Button15_Click()
ActiveSheet.Unprotect

calc = Application.Calculation
Application.Calculation = xlManual
ActiveSheet.DisplayAutomaticPageBreaks = False
For Each cell In Range("AL35:AL609")
cell.EntireRow.Hidden = cell.Value = 0
Next cell
Application.Calculation = calc
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub

or

Sub Button15_Click()
Dim rng as Range
ActiveSheet.Unprotect

calc = Application.Calculation
Application.Calculation = xlManual
ActiveSheet.DisplayAutomaticPageBreaks = False
Range("AL35:AL609").EntireRow.Hidden = False
For Each cell In Range("AL35:AL609")
if cell.Value = 0 then
if rng is nothing then
set rng = cell
else
set rng = Union(rng,cell)
end if
End if
Next cell
if not rng is nothing then
rng.entireRow.Hidden = True
End if
Application.Calculation = calc
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub


--
Regards,
Tom Ogilvy

"Sean" wrote:

I have a macro that takes over 45 min to run at times. Is there a better way
to do this, or speed it up at all. The macro I use is as follows, it does
need to be specific to the column and the rows that it is currently set to...

Sub Button15_Click()
ActiveSheet.Unprotect
For Each cell In Range("AL35:AL609")
cell.EntireRow.Hidden = cell.Value = 0
Next cell
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub

Thanks,

Sean

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
Help, need to speed up this macro retseort Excel Discussion (Misc queries) 3 January 12th 06 12:33 PM
How to speed up this macro? Ctech Excel Programming 19 October 6th 05 04:28 PM
Speed-up a macro! maca[_3_] Excel Programming 3 July 15th 05 06:40 PM
Speed up macro rn Excel Discussion (Misc queries) 3 February 21st 05 01:25 PM
MACRO Speed? Jim[_25_] Excel Programming 2 September 15th 03 03:50 PM


All times are GMT +1. The time now is 05:20 AM.

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"