Flickering screen while processing macro

P

Pa Maher

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!
 
M

Mike H

Try

Application.screenupdating = false

your code

Application.screenupdating=true

Mike
 
R

Ron Coderre

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)
 
T

Tom Ogilvy

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.
 
P

Pa Maher

The actual code I used is
Worksheets("Source").Range("A9:B9").Copy
Worksheets("Quiz").Range("B9:C9")PasteSpecial Paste:=xlPasteAll
I get an error message
Compile error
syntax error
 
D

Dave Peterson

You dropped a dot before the PasteSpecial.

Is that an error in your post or in your code?
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top