ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   ScreenUpdating = False not working (https://www.excelbanter.com/excel-programming/379382-re-screenupdating-%3D-false-not-working.html)

Jim Thomlinson

ScreenUpdating = False not working
 
Worksheet is a reserved word... Give this a try...

Private Sub Workbook_Open()
dim wks as Worksheet

Application.ScreenUpdating = False
For Each wks In ThisWorkbook.Worksheets
wks.Visible = xlSheetVisible
Next wks
ClientDetails.Show
Application.ScreenUpdating = True
End Sub

--
HTH...

Jim Thomlinson


"BOBODD" wrote:

Im using this code when my workbook opens:
Private Sub Workbook_Open()
Dim i As Integer
For i = 1 To 8
Sheets(i).Visible = xlVeryHidden
Next
Application.ScreenUpdating = False
For Each Worksheet In ThisWorkbook.Worksheets
Worksheet.Visible = xlSheetVisible
Next
ClientDetails.Show
End Sub

The first For loop is only there for testing. Eventually this loop will be
run when the program is closed.

The problem is that although I have the "Application.ScreenUpdating = False"
there, Excel still shows the sheets being unhidden, along with any updates
made. I've checked my entire program, and there are ScreenUpdating = True
statements to change things. What else would cause this?


BOBODD

ScreenUpdating = False not working
 
After rereading this, I wasn't very clear in my original post.

I want all of the sheets hidden. The screenupdating should be switched off,
then all sheets are unhidden, but not shown onscreen. Code will alter some
of these sheets (using info entered thru userforms) and will finally hide all
unaltered sheets, so users only see the worksheets that are relevant to them.

I have removed all the Application.ScreenUpdating = True statements from my
code, so there should be nothing to countermand the "False" statement.
Regardless of this, Excel still shows all of the sheets as they're unhidden
or updating by my code. Is there anything that could cause this?

I tried Jim's suggestion in case it did have something to0 do with it, but
no dice.

"Jim Thomlinson" wrote:

Worksheet is a reserved word... Give this a try...

Private Sub Workbook_Open()
dim wks as Worksheet

Application.ScreenUpdating = False
For Each wks In ThisWorkbook.Worksheets
wks.Visible = xlSheetVisible
Next wks
ClientDetails.Show
Application.ScreenUpdating = True
End Sub

--
HTH...

Jim Thomlinson


"BOBODD" wrote:

Im using this code when my workbook opens:
Private Sub Workbook_Open()
Dim i As Integer
For i = 1 To 8
Sheets(i).Visible = xlVeryHidden
Next
Application.ScreenUpdating = False
For Each Worksheet In ThisWorkbook.Worksheets
Worksheet.Visible = xlSheetVisible
Next
ClientDetails.Show
End Sub

The first For loop is only there for testing. Eventually this loop will be
run when the program is closed.

The problem is that although I have the "Application.ScreenUpdating = False"
there, Excel still shows the sheets being unhidden, along with any updates
made. I've checked my entire program, and there are ScreenUpdating = True
statements to change things. What else would cause this?


NickHK

ScreenUpdating = False not working
 
You cannot hide ALL the sheets ; there must be one sheet (either a worksheet
or a chart) visible.
Not sure what you mean by "all sheets are unhidden, but not shown onscreen"
.. Sheets are either visible or not.

You can still reference hidden sheets to work with them, but not .Select
anything, which is seldom necessary anyway.

If for some reason, you want the sheet visible, but out of the Excel window,
you can set the Window(1).Top/.Left properties. Although why you would want
to do this, I'm not sure.

NickHK
P.S. It seems ScreenUpdating is always true when stepping through code, so
only expect it work when not in break mode.

"BOBODD" wrote in message
...
After rereading this, I wasn't very clear in my original post.

I want all of the sheets hidden. The screenupdating should be switched

off,
then all sheets are unhidden, but not shown onscreen. Code will alter

some
of these sheets (using info entered thru userforms) and will finally hide

all
unaltered sheets, so users only see the worksheets that are relevant to

them.

I have removed all the Application.ScreenUpdating = True statements from

my
code, so there should be nothing to countermand the "False" statement.
Regardless of this, Excel still shows all of the sheets as they're

unhidden
or updating by my code. Is there anything that could cause this?

I tried Jim's suggestion in case it did have something to0 do with it, but
no dice.

"Jim Thomlinson" wrote:

Worksheet is a reserved word... Give this a try...

Private Sub Workbook_Open()
dim wks as Worksheet

Application.ScreenUpdating = False
For Each wks In ThisWorkbook.Worksheets
wks.Visible = xlSheetVisible
Next wks
ClientDetails.Show
Application.ScreenUpdating = True
End Sub

--
HTH...

Jim Thomlinson


"BOBODD" wrote:

Im using this code when my workbook opens:
Private Sub Workbook_Open()
Dim i As Integer
For i = 1 To 8
Sheets(i).Visible = xlVeryHidden
Next
Application.ScreenUpdating = False
For Each Worksheet In ThisWorkbook.Worksheets
Worksheet.Visible = xlSheetVisible
Next
ClientDetails.Show
End Sub

The first For loop is only there for testing. Eventually this loop

will be
run when the program is closed.

The problem is that although I have the "Application.ScreenUpdating =

False"
there, Excel still shows the sheets being unhidden, along with any

updates
made. I've checked my entire program, and there are ScreenUpdating =

True
statements to change things. What else would cause this?





All times are GMT +1. The time now is 09:24 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com