There ARE bugs here - either in the code (which I suspect) and/or in how MS expects users to understand the features of the interface for zoom controls.
There are at least 4 different ways to
directly interact with the zoom characteristics of a Word document:
- the slider and buttons on the bottom right of Word
- the View tab's preset one-click buttons
- the View tab's Zoom dialog box interface with multiple INTERLOCKING, OVERLAPPING, CONFLICTING, and CONFUSING options
- mouse/trackpad zooming (ctrl+scroll)
Then beyond those direct interactions are some indirect ones:
- settings saved into the document itself,
- any Word application settings or "last usage" information that is stored, including window size (full screen, etc),
- size (as in resolution AND physical dimensions) of the monitor currently displaying the document,
- any macros that folks have created or copied to "help" with the above headaches,
- bugs in VBA in not updating the screen rendering after changing settings (Thanks for that, MS!)
One bug that is really confusing (Word 2010 v14.0.7145.500 32bit, just to be concrete!), is when adjusting the zoom in various ways, what you see is not the whole state of what Word thinks you want. Just doing something that causes Word to re-render that
document can alter the zoomed view!
For instance, you can set the display via VBA (aka - macros) to be 2 pages side-by-side, but the display oftentimes will NOT show that zoomed view when the macro is done.
BUT - if you do something to adjust the screen real-estate (collapse the ribbon, add a side bar, adjust window to "restore" then full screen again, etc) the document will be re-rendered, pretty reliably to what VBA set it to be.
For what its worth, and no promises it won't go amok & eat your family, at the bottom of this post I've appended my macros to force a re-rendering, with time delay to ensure it does it correctly. Without adding delay (like when using "Application.ScreenRefresh"),
resizing is not correct as Page-Down does not quite jump whole pages.
Same thing with mouse/trackpad zooming - you can adjust it this way to where you like it, but DON'T expect it to STAY that way when making one of the changes above that forces a re-rendering!
I have found that if I use the zoom dialog box (View tab/Zoom), and set the "Many pages" control to 1x1 or 2x1, then it tends to STAY in that format when it can (meaning 1 page across, or 2 pages across). But subsequent mouse/trackpad zooming is not respected
when re-rendered, as it pops back to that "Many pages" setting.
Alternatively when I use the handy preset/quick buttons on the View tab, or the Whole Page option in the Zoom dialog box, various unexpected/undesired things can happen.
For instance, clicking the View tab's "One Page" or "Two Pages" button will do that.
Then using mouse zooming can put you into a mode of varying back and forth between one AND two pages across!
But - if you had used the slider instead of the mouse, it will vary across full range of the "many pages" option!
Sometimes it seemed to depend on whether I dragged the slider directly, or hit the +/- buttons!
And on and on.
Some things are sticky, some work in a certain range, when done a certain way, and ... other times not so much.
Who knows, maybe there are other interactions - like whether you were actually EDITING the document, vs just VIEWING it?
I'm done - spent too much time fighting it, and then recording these findings so others can benefit from them.
I would like to think MS devs could use this info, but with the end of 2010 mainstream support two weeks ago, and the releases of Office 2013, 2016 (huh?), Online/365... not gonna happen.
I doubt I'd have a job if I left problems like this untended for years!
In short:
Very annoying, very buggy. But with fiddling, you can get the view you want, at least for awhile - hopefully long enough to get the task done. Or hopefully with some of the above info you can get it back into something you can keep working with, until it
happens again.
(Wash, rinse, repeat.)
Good Luck to all!
Sub ZoomViewPrint2x1()
'Changes zoom to Print Layout, with 2 full pages. Modified from:
' answers.microsoft.com/en-us/office/forum/office_2010-customize/changing-the-default-view-zoom-size-when-i-open
On Error GoTo errhandler
With ActiveWindow
If .View.SplitSpecial = wdPaneNone Then
.ActivePane.View.Type = wdPrintView
Else
.View.Type = wdPrintView
End If
With .ActivePane.View.Zoom
.PageColumns = 2
.PageRows = 1
End With
End With
ActiveWindow.ToggleRibbon
Application.OnTime When:=Now + TimeValue("00:00:01"), Name:="DelayedToggleRibbon"
errhandler:
Exit Sub
End Sub
Sub DelayedToggleRibbon()
ActiveWindow.ToggleRibbon
End Sub