View Single Post
  #8   Report Post  
Posted to microsoft.public.word.mailmerge.fields
Doug Robbins - Word MVP Doug Robbins - Word MVP is offline
external usenet poster
 
Posts: 8,832
Default How to Intercept the "Update All Labels" Button

The only reason that I can think of that might explain why it is not
running, is if there is another macro of the same name in some other
template that is active.

A way around the issue would be to modify the menu/mailmerge toolbar if you
are using a version of Word before, to remove the builtin-facility and
replace it with a button that runs the macro or in Word 2007, modify the
ribbon in a similar way.

--
Hope this helps.

Please reply to the newsgroup unless you wish to avail yourself of my
services on a paid consulting basis.

Doug Robbins - Word MVP, originally posted via msnews.microsoft.com

"sjamie" wrote in message
...
Yes, I know a macro with same name as a Word command "should" take
precedence
but for some reason it is not doing that for me. I added the line of code
as
you suggested but the message never appeared when I used the Update All
Labels button. Of course, the message does appear when I run the code
with a
keyboard shortcut. The problem is with the Update All Labels button not
running the code as it should. I checked to make sure the macro is named
properly (MailMergePropagateLabel), the template is saved in the Word
Startup
folder and the template does show up (and is checked) in Tools -
Templates &
Add-ins. The good news is I can update the labels using a keyboard
shortcut
but I'd really like for the Update All Labels button to work. Plus, now I
really want to know why the button is not running the macro.

Any other suggestions?

P.S. Doug, I really appreciate you taking the time to troubleshoot this
problem with me!

"Doug Robbins - Word MVP" wrote:

With a macro that has the same name as a Word command, that macro should
take precedence over the Word command. Try opening the template at at
the
beginning of the code insert a command at the beginning of the code in
the
macro

MsgBox "Macro running"

and then try and update the labels and see if that message appears.

--
Hope this helps.

Please reply to the newsgroup unless you wish to avail yourself of my
services on a paid consulting basis.

Doug Robbins - Word MVP, originally posted via msnews.microsoft.com

"sjamie" wrote in message
...
Yes, I am using Word 2003 and under Tools Templates and Add-ins, the
template is listed and IS checked. What else do I need to do?

"Doug Robbins - Word MVP" wrote:

Are you sure that the add-in is loaded? In Word 2007, from the
Developer
tab, select Document Template and make sure that the template that you
created is there and has a check mark against it. In earlier
versions,
from
the Tools menu, select Templates and Add-ins and make sure that the
template
that you created is there and has a check mark against it.

--
Hope this helps.

Please reply to the newsgroup unless you wish to avail yourself of my
services on a paid consulting basis.

Doug Robbins - Word MVP, originally posted via msnews.microsoft.com

"sjamie" wrote in message
...
Doug, I did put the code into a template that I saved in the Word
Startup
folder so it becomes an add-in. The Update All Labels button still
calls
the
original, broken command resulting in only a few labels getting
populated.
But if I manually run the code as a macro via a keyboard shortcut,
it
works
perfectly. I would prefer for the Update All Labels button to run
the
corrected code.

Any more ideas?

"Doug Robbins - Word MVP" wrote:

If you put that code into a template that you save in the Word
Startup
folder so that it becomes an add-in and will be available whenever
you
need
it. As the macro has the same name as the Word Command that is
supposed
to
do the job, this macro will run when the Update Labels button is
used
when
setting up the mail merge label main document.

--
Hope this helps.

Please reply to the newsgroup unless you wish to avail yourself of
my
services on a paid consulting basis.

Doug Robbins - Word MVP, originally posted via msnews.microsoft.com

"sjamie" wrote in message
...
I have a touchscreen laptop which causes my "Update All Labels"
button
to malfunction during a mail merge according to
http://support.microsoft.com/?kbid=898630.

I was able to use MVP Doug Robbins code below as a great
workaround.
It runs perfectly as a MACRO that I initiate using a keyboard
shortcut
but I would like for it to run whenever I press the "Update All
Labels" button instead. I tried saving it as a template and
putting
it in Word's startup folder but that had no effect. What else
shall
I
do?


Sub MailMergePropagateLabel()
Dim atable As Table
Dim i As Long
Dim j As Long
Dim source As Cell
Dim target As Cell
Dim myrange As Range
Set atable = ActiveDocument.Tables(1)
Set source = atable.Cell(1, 1)
Set myrange = source.Range
myrange.Collapse wdCollapseStart
ActiveDocument.Fields.Add Range:=myrange, Text:="NEXT", _
PreserveFormatting:=False
source.Range.Copy
For j = 2 To atable.Columns.Count
Set target = atable.Cell(1, j)
If target.Range.Fields.Count 0 Then
target.Range.Paste
End If
Next j
For i = 2 To atable.Rows.Count
For j = 1 To atable.Columns.Count
Set target = atable.Cell(i, j)
If target.Range.Fields.Count 0 Then
target.Range.Paste
End If
Next j
Next i

atable.Cell(1, 1).Range.Fields(1).Delete

End Sub