Microsoft KB Archive/90894

{|
 * width="100%"|

WD: Macro to Cascade Open Document Windows

 * }

Q90894

-

The information in this article applies to:


 * Microsoft Word for Windows, versions 1.0, 1.1, 1.1a, 2.0, 2.0a, 2.0a-CD, 2.0b, 2.0c, 6.0, 6.0a, 6.0c
 * Microsoft Word for Windows, versions 7.0, 7.0a
 * Microsoft Word for the Macintosh, versions 6.0, 6.0.1, 6.0.1a

-

SUMMARY
Microsoft Word does not contain a command to cascade all open document windows. You can add this functionality using a WordBasic macro. The following macro examples cascade all open Word document windows. After you create this macro, you can assign it to the Windows menu for easy access.

MORE INFORMATION
WARNING: ANY USE BY YOU OF THE CODE PROVIDED IN THIS ARTICLE IS AT YOUR OWN RISK. Microsoft provides this macro code &quot;as is&quot; without warranty of any kind, either express or implied, including but not limited to the implied warranties of merchantability and/or fitness for a particular purpose.

  Sub MAIN 'Report current zoom factor, place in &quot;Zoom&quot; Zoom = SelInfo(19) On Error Resume Next 'Determine whether Word is in Outline view Outview = ViewOutline 'Set ViewZoom to 100% ViewZoom100 'Maximize document window If DocMaximize Then DocMaximize 'Count number of open windows NumWindows = CountWindows - 1 'Vertical overlap is 14 Vlap = 14 'Horizontal overlap is 7 Hlap = 7 'Calculate width of window in points Width = Val(AppInfo$(6)) - NumWindows * HLap 'Calculate height of windows in points Height = Val(AppInfo$(7)) - NumWindows * VLap ' The following loop calculates window size and ' moves them into position. For Cascade = 1 To NumWindows + 1 NextWindow DocMove NewWidth, NewHeight DocSize Width, Height NewWidth = NewWidth + HLap NewHeight = NewHeight + VLap Next Cascade 'Return to former zoom factor ViewZoom .ZoomPercent = Zoom 'If formerly in outline view, then return to outline view. If Outview Then ViewOutline End Sub

Word for the Macintosh
  Sub MAIN 'Report current zoom factor, place in &quot;Zoom&quot; Zoom = SelInfo(19) On Error Resume Next 'Determine whether Word is in Outline view OutlineX = ViewOutline 'Set ViewZoom to 100% ViewZoom100 'Maximize document window If DocMaximize Then DocMaximize 'Count number of open windows NumWindows = CountWindows - 1 'Vertical overlap is 14 Vlap = 14 'Horizontal overlap is 7 Hlap = 7 'Calculate width of window in points. Width = Val(AppInfo$(6)) - NumWindows * HLap 'Calculate height of windows in points. Height = Val(AppInfo$(7)) - NumWindows * VLap ' The following loop calculates window size and ' moves them into position. For Cascade = 1 To NumWindows + 1 NextWindow DocMove NewWidth, NewHeight DocSize Width, Height NewWidth = NewWidth + HLap NewHeight = NewHeight + VLap Next Cascade 'Return to former zoom factor ViewZoom .ZoomPercent = Zoom 'If formerly in outline view, then return to outline view. If OutlineX Then ViewOutline End Sub