The Update Method
The Update method simply updates the values in a dialog box. This is useful if we assign a variable of type Dialog to a Dialog object and then subsequently one of the settings in the Dialog box is changed. To illustrate, the following code first assigns the dial
variable to the Font Dialog object. Then it changes the current font for the selected text. At this point, the Dialog object pointed to by dial
is not updated to reflect the new font. The Update method updates this object:
Dim dial as Dialog Set dial = Dialogs(wdDialogFormatFont) . . . Selection.Font.Name = "Arial" . . . dial.Update dial.Show
By the way, it is not entirely clear what is going on behind the scenes here. For if you insert the following code immediately after the Selection.Font.Name
line:
Set dial2 = Dialogs(wdDialogFormatFont) dial2.Display dial.Display
you will see a dialog box (the one referred to by dial2
) that shows the new font, followed by a dialog box (referred to by dial
) that shows the old font. Thus, there appear to be two distinct Dialog objects with index wdDialogFormatFont–
one pointed to by dial
and one pointed to by dial2
!
In any case, I can say for sure that whenever we need to rely on current information from a variable of type Dialog, it is important to first call the Update method.
Get Writing Word Macros, Second Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.