08-15-2018 01:46 AM
08-15-2018 01:46 AM
I have seen the other posts on this topic, where the property does not function in Excel 2016, but there still does not appear to be a remedy for this problem.
I, like probably thousands of vba writers are now finding their Excel 2010 (or earlier) macros employing this property to suppress screen flicker (and jumping between workbook windows) now make their applications look very amateurish.
With so many questions and comments since the release of Excel 2013, when this issue first occurred, there has not been an explanation from Microsoft as to why this property has been disabled and more importantly whether you accept with the level of concern a fix is required.
Please can you explain and how users can overcome this issue.
08-15-2018 07:17 AM
Can you explain explicitly what the issue is?
I use Application.ScreenUpdating frequently in my VBA solutions, but I didn't notice any issue in it.
08-15-2018 08:30 AM
This only occurs in Excel 2013 and Excel 2016.
Typical use for Application.ScreenUpdating would be to supress screen flicker during opening and transfer of data to another workbook. Without this property, the second workbook becomes the active element and the primary window. Even providing the instruction to 'Activate' the first workbook immediately after opening the second still transfers the primary window to the second momentarily.
This becomes even more evident if cell data is moved from one workbook to another.
Using Application.ScreenUpdating in Excel 2010 does exactly as intended and locks the screen while processes such as those described run.
08-16-2018 07:27 AM
Yes, I see where you are going but as the two open workbooks are in the same instance and active within their own window environment the application property should still be effective on the primary display.
It does state: "all of the Excel application-level window methods, events, and properties remain unaffected and work the way they have in previous versions of Excel", so this implies 'ScreenUpdating' should be the same.
I still don't understand why Microsoft have not answered this question considering the number of references that can be seen just by putting this inquiry into a web browser. Plus, what are all those Excel application developers using 'ScreenUpdating' doing when used in 2013/2016?
08-16-2018 08:24 AM
I have Excel 2010 and Excel 2016 both installed on my PC, so can you provide a code example to be able to reproduce this issue on my own?
Anyway, I recommend you to ask this community instead because it's the best place to get support for such an issue.
06-22-2019 07:50 PM
Try this fix
Set the ScreenUpdating property on the Workbook object like this:
Workbooks("your workbook name.xls").Application.ScreenUpdating = False
' add your code in here
Workbooks("your workbook name.xls").Application.ScreenUpdating = True
where "your workbook name" is the workbook that you are updating.
I posted this fix on the excel suggestion forum too.
06-22-2019 09:33 PM
06-23-2019 12:16 AM
That didn't format very well, let me try again. Also, I found a neater way to minimize the workbook being updated.
Application.ScreenUpdating = False
Dim wbName As Window
Set wbName = Windows("name of workbook being updated")
wbName.WindowState = xlMinimized
' other code in here
Application.ScreenUpdating = True
wbName.WindowState = xlMaximized