Based on input from the User, a macro takes data from several worksheets and
inputs the data to a form which then is further updated by the user. The
screen flickers as the program copies and pastes data.
Is there some way to mask the flicker by using a "splash screen" (if I am
using the term properly), which would disappear when the update is completed?
The displayed message would read:
"Please wait while CAIS is being created" and also include a creation
graphic that I have.
Thanks in advance!
Mike H - 19 Sep 2007 12:54 GMT
Try
Application.screenupdating = false
your code
Application.screenupdating=true
Mike
> Based on input from the User, a macro takes data from several worksheets and
> inputs the data to a form which then is further updated by the user. The
[quoted text clipped - 8 lines]
>
> Thanks in advance!
Ron Coderre - 19 Sep 2007 12:56 GMT
Try this:
Application.ScreenUpdating = FALSE
....run your code....
Application.ScreenUpdating = TRUE
If the process may take a while, consider using the Status Bar to display
progress:
Application.StatusBar = "Processing sheet 3 of 12"
Return it to the default behavior with:
Application.StatusBar = FALSE
Does that help?
--------------------------
Regards,
Ron (XL2003, Win XP)
Microsoft MVP (Excel)
> Based on input from the User, a macro takes data from several worksheets
> and
[quoted text clipped - 10 lines]
>
> Thanks in advance!
Tom Ogilvy - 19 Sep 2007 12:58 GMT
at the top of the macro put in
Application.ScreenUpdating = False
at the end of the macro
Application.ScreenUpdating = true
if you really want a splash screen:
http://www.j-walk.com/ss/excel/tips/tip39.htm
maybe combined with
http://www.j-walk.com/ss/excel/tips/tip34.htm
If your code has command like
worksheets("Sheet1").Activate
range("A1").Select
selection.Copy
worksheets("Summary").activate
Range("B9").Select
Activesheet.Paste
that could be done with
worksheets("Sheet1").Range("A1").copy Worksheets("Summary").Range("B9")
or if you only need the contents of the cell and not the formatting
Worksheets("Summary").Range("B9").Value = _
worksheets("Sheet1").Range("A1").Value
These types of commands are silent. IF Summary was the activesheet and
range B9 was in view, you would see its value change, but if some other sheet
was active, you would see very little.

Signature
Regards,
Tom Ogilvy
> Based on input from the User, a macro takes data from several worksheets and
> inputs the data to a form which then is further updated by the user. The
[quoted text clipped - 8 lines]
>
> Thanks in advance!