Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hello all,
This is an question that I can't solve, but it's not a terribly important issue. I've been tasked to rewrite some macros that various users have recorded. It's fairly straightforward and I don't have any problems. But there's two lines of code that are all over the macro, and I can't figure out how they were recorded. If I copy those two lines and try to run them independently, it crashes. But the macro works fine by itself. I'm wondering if I'm missing something, thought I'd throw it out there. Again, this is just to satify my curiousity. The lines a ActiveWindow.Visible = False ActiveWindow.Activate These two lines appear maybe 5 times per macro. But the user can't remember what they did, and I haven't been able to duplictate it. I can duplicate each line, but not together (in that order). I have to hide the sheet to get the first line, but activate doesn't work with a hidden sheet. Anyone smarter know what's going on? Thanks, Jay -- Disregard, this is so I can find my post later. ***postedbyJay*** |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I don't understand why a user would want to hide the book, but still activate
it... My guess would be taht you could get rid of the first line but keep the second (the second puts focus on the active window (or the current Workbook, for us laymen)), which allows the macro to follow up with appropriate selections of different worksheets and cells on said worksheets. ActiveWindow.Visible = False ActiveWindow.Activate The first line closes my workbook when I tried to recreate it.. I don't know why a user would want to close a workbook that way (and not just actually close it..) Hope this helps, Jim -- I appreciate any feedback. Please don''t be scared to say that "Yes" I/someone else did answer your question. Thank you. |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi,
Those 2 lines of code do work, if you have more than 1 window(file) open. When the first file is hidden, the next file becomes active. As already said, this was written in the recording mode, so just ditch that second line...better to also know if it is really necessary to use a relative reference in the first line. If a user somehow clicks to another window, then that gets zapped and the macro starts chaos. "Jay" wrote: Hello all, This is an question that I can't solve, but it's not a terribly important issue. I've been tasked to rewrite some macros that various users have recorded. It's fairly straightforward and I don't have any problems. But there's two lines of code that are all over the macro, and I can't figure out how they were recorded. If I copy those two lines and try to run them independently, it crashes. But the macro works fine by itself. I'm wondering if I'm missing something, thought I'd throw it out there. Again, this is just to satify my curiousity. The lines a ActiveWindow.Visible = False ActiveWindow.Activate These two lines appear maybe 5 times per macro. But the user can't remember what they did, and I haven't been able to duplictate it. I can duplicate each line, but not together (in that order). I have to hide the sheet to get the first line, but activate doesn't work with a hidden sheet. Anyone smarter know what's going on? Thanks, Jay -- Disregard, this is so I can find my post later. ***postedbyJay*** |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
That's why I was confused. If I only have one file open (the one containing
the macro) the code still runs. There's no error. I'm removing all similar lines because it's not required for the macro to function. Just the behaviour of the code didn't match my expectations. And I couldn't duplicate it. Appreciate both your responses. -- Disregard, this is so I can find my post later. ***postedbyJay*** "desertres" wrote: Hi, Those 2 lines of code do work, if you have more than 1 window(file) open. When the first file is hidden, the next file becomes active. As already said, this was written in the recording mode, so just ditch that second line...better to also know if it is really necessary to use a relative reference in the first line. If a user somehow clicks to another window, then that gets zapped and the macro starts chaos. "Jay" wrote: Hello all, This is an question that I can't solve, but it's not a terribly important issue. I've been tasked to rewrite some macros that various users have recorded. It's fairly straightforward and I don't have any problems. But there's two lines of code that are all over the macro, and I can't figure out how they were recorded. If I copy those two lines and try to run them independently, it crashes. But the macro works fine by itself. I'm wondering if I'm missing something, thought I'd throw it out there. Again, this is just to satify my curiousity. The lines a ActiveWindow.Visible = False ActiveWindow.Activate These two lines appear maybe 5 times per macro. But the user can't remember what they did, and I haven't been able to duplictate it. I can duplicate each line, but not together (in that order). I have to hide the sheet to get the first line, but activate doesn't work with a hidden sheet. Anyone smarter know what's going on? Thanks, Jay -- Disregard, this is so I can find my post later. ***postedbyJay*** |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Figured it out.
The ActiveWindow.Visible = False code was recorded when there was a dialog bog (for editing various chart properties) was closed, and ActiveWindow.Activate was recorded when focus returned to the worksheet. That's how the macro had those two lines. -- Disregard, this is so I can find my post later. ***postedbyJay*** "Jay" wrote: Hello all, This is an question that I can't solve, but it's not a terribly important issue. I've been tasked to rewrite some macros that various users have recorded. It's fairly straightforward and I don't have any problems. But there's two lines of code that are all over the macro, and I can't figure out how they were recorded. If I copy those two lines and try to run them independently, it crashes. But the macro works fine by itself. I'm wondering if I'm missing something, thought I'd throw it out there. Again, this is just to satify my curiousity. The lines a ActiveWindow.Visible = False ActiveWindow.Activate These two lines appear maybe 5 times per macro. But the user can't remember what they did, and I haven't been able to duplictate it. I can duplicate each line, but not together (in that order). I have to hide the sheet to get the first line, but activate doesn't work with a hidden sheet. Anyone smarter know what's going on? Thanks, Jay -- Disregard, this is so I can find my post later. ***postedbyJay*** |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Improving the code from a recorded macro | Excel Programming | |||
Tidying Recorded Macro Code | Excel Programming | |||
Manual Autofilter works, but recorded Macro does something else | Excel Programming | |||
Call recorded macro from VBA code | Excel Programming | |||
looking to simplify a recorded macro with code | Excel Programming |