Reply
 
Thread Tools Display Modes
  #1   Report Post  
Posted to microsoft.public.word.mailmerge.fields
BK BK is offline
external usenet poster
 
Posts: 30
Default Unable to update labels in mail merge

I'm using mswordxp. I've inserted my merge field in the first column/row of
the label template and clicked on the update icon in the tool bar and have no
response. Shouldn't it update and insert "next record" in every cell?
  #2   Report Post  
Posted to microsoft.public.word.mailmerge.fields
Doug Robbins - Word MVP on news.microsoft.com Doug Robbins - Word MVP on news.microsoft.com is offline
external usenet poster
 
Posts: 407
Default Unable to update labels in mail merge

Sounds like you might be using a Tablet PC or a PC with some form of Tablet
functionality.

Use the following macro to overcome the problem with propagation of mail
merge field fields with a label type mail merge when using a Tablet PC and
some other Computers that have Tablet PC Functionality available:

Sub MailMergePropagateLabel()

Dim atable As Table

Dim i As Long, j As Long

Dim source As Cell, 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



It is suggested that you put this 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

"BK" wrote in message
news
I'm using mswordxp. I've inserted my merge field in the first column/row
of
the label template and clicked on the update icon in the tool bar and have
no
response. Shouldn't it update and insert "next record" in every cell?



  #3   Report Post  
Posted to microsoft.public.word.mailmerge.fields
someotherbob someotherbob is offline
external usenet poster
 
Posts: 3
Default Unable to update labels in mail merge

What are the exact steps to make this a template?

You say the template goes in the startup folder. Which is the Word startup
folder? Is it C:\Program Files (x86)\Microsoft Office\Office12, or in
C:\Program Files (x86)\Microsoft Office\Templates, or somewhere else?

Does the name of the template file matter? Or does the first line "Sub
MailMergePropagateLabel()" do the mapping over the bad default command
regardless of the template name?

I've tried several incatations of the template file, but I am still not
getting the Address Block propogating properly across the label document
after hitting "Update Labels".

By the way, I'm not on a tablet PC, but on a touch enabled desktop. You are
going to see many more people run across this bug as Win7 drives more touch
PC volume into the market.

Thanks,
Bob




"Doug Robbins - Word MVP on news.microsof" wrote:

Sounds like you might be using a Tablet PC or a PC with some form of Tablet
functionality.

Use the following macro to overcome the problem with propagation of mail
merge field fields with a label type mail merge when using a Tablet PC and
some other Computers that have Tablet PC Functionality available:

Sub MailMergePropagateLabel()

Dim atable As Table

Dim i As Long, j As Long

Dim source As Cell, 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



It is suggested that you put this 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

"BK" wrote in message
news
I'm using mswordxp. I've inserted my merge field in the first column/row
of
the label template and clicked on the update icon in the tool bar and have
no
response. Shouldn't it update and insert "next record" in every cell?




  #4   Report Post  
Posted to microsoft.public.word.mailmerge.fields
Peter Jamieson Peter Jamieson is offline
external usenet poster
 
Posts: 4,582
Default Unable to update labels in mail merge

What are the exact steps to make this a template?

Create a new document, use VBE to create a new module in that document,
put the Sub in there, use File-Save As or Office Btton-Save As to save
as a template (.dot in Word 2003 and earlier, .dotm in Word 2007).


You say the template goes in the startup folder. Which is the Word

startup
folder? Is it C:\Program Files (x86)\Microsoft Office\Office12, or in
C:\Program Files (x86)\Microsoft Office\Templates, or somewhere else?


In Word 2007, the Startup folder is defined in Word Office Button-Word
options-Advanced-File Locations

In Word 2003 (and probably earlier) it's in Word Tools-Options-File
Locations.

Here, for example, these are both set by default to be in per-user
locations.

There is also a startup folder under the program path, but AIUI this is
the "Wrong" path to put things - see e.g.

http://word.mvps.org/faqs/macrosvba/...orrectPath.htm

I expect Doug will tell us if this is no longer correct.

Does the name of the template file matter?


It shouldn't.

Or does the first line "Sub
MailMergePropagateLabel()" do the mapping over the bad default command
regardless of the template name?


It should, but if the macro is not running at all it is possible that
there is a security/trust issue.

I've tried several incatations of the template file, but I am still not
getting the Address Block propogating properly across the label

document
after hitting "Update Labels".


If your label layout happens to be the sort which uses "spacer" columns
then the macro will need to skip some cells. This version may do it.


Sub MailMergePropagateLabel()

Dim atable As Table
Dim i As Long, j As Long
Dim jBlank As Integer
Dim source As Cell
Dim myrange As Range
Set atable = ActiveDocument.Tables(1)
' Are we doing all columns or skipping columns?
' jBlank = 0 means "replicate to odd-numbered columns"
' jBlank = 2 means "replicate to all columns"
jBlank = 2
If atable.Columns.Count 2 Then
If atable.Columns.Count Mod 2 = 1 Then
If atable.Columns(2).Width atable.Columns(1).Width Then
jBlank = 0
For j = 3 To atable.Columns.Count
If atable.Columns(j).Width atable.Columns(2 - (j Mod
2)).Width Then
jBlank = 2
Exit For
End If
Next j
End If
End If
End If

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 i = 1 To atable.Rows.Count
For j = 1 To atable.Columns.Count
' skip cell 1
If i + j 2 Then

' always delete the cell content
atable.Cell(i, j).Range.Delete

' If it's a label, not a spacer, copy the content
If j Mod 2 jBlank Then
atable.Cell(i, j).Range.Paste
End If
End If
Next j
Next i
atable.Cell(1, 1).Range.Fields(1).Delete

End Sub

By the way, I'm not on a tablet PC, but on a touch enabled desktop.

You are
going to see many more people run across this bug as Win7 drives more

touch
PC volume into the market.


FWIW I am not a Microsoft employee, but a few years ago I put a lot of
effort into verifying that this problem was tablet-specific and
reporting it. Since then, the problem has spread to Vista when using
tablet and other types of device. Unfortunately I have no idea whether
Microsoft has actually identified the root cause (I made one
suggestion), but if they have, I really do think this problem deserves a
fix in Windows because it appears that the Word team simply cannot work
around it.

Peter Jamieson

http://tips.pjmsn.me.uk

someotherbob wrote:
What are the exact steps to make this a template?

You say the template goes in the startup folder. Which is the Word startup
folder? Is it C:\Program Files (x86)\Microsoft Office\Office12, or in
C:\Program Files (x86)\Microsoft Office\Templates, or somewhere else?

Does the name of the template file matter? Or does the first line "Sub
MailMergePropagateLabel()" do the mapping over the bad default command
regardless of the template name?

I've tried several incatations of the template file, but I am still not
getting the Address Block propogating properly across the label document
after hitting "Update Labels".

By the way, I'm not on a tablet PC, but on a touch enabled desktop. You are
going to see many more people run across this bug as Win7 drives more touch
PC volume into the market.

Thanks,
Bob




"Doug Robbins - Word MVP on news.microsof" wrote:

Sounds like you might be using a Tablet PC or a PC with some form of Tablet
functionality.

Use the following macro to overcome the problem with propagation of mail
merge field fields with a label type mail merge when using a Tablet PC and
some other Computers that have Tablet PC Functionality available:

Sub MailMergePropagateLabel()

Dim atable As Table

Dim i As Long, j As Long

Dim source As Cell, 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



It is suggested that you put this 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

"BK" wrote in message
news
I'm using mswordxp. I've inserted my merge field in the first column/row
of
the label template and clicked on the update icon in the tool bar and have
no
response. Shouldn't it update and insert "next record" in every cell?



  #5   Report Post  
Posted to microsoft.public.word.mailmerge.fields
Peter Jamieson Peter Jamieson is offline
external usenet poster
 
Posts: 4,582
Default Unable to update labels in mail merge

BTW if you happen to see this message, I posted a general remark about this
issue in the Win 7 forums as there did not appear to be a post already. It
might be worth adding any specific technical info. you have and/or getting
others to post if they have the same problem. The post is now near the
bottom of the following conversation:

http://social.technet.microsoft.com/...8-4a9fc3ae912b

but it loks as if an "reply" would have to be in the newer "general
comments" discussions.

Peter jamieson

"someotherbob" wrote in message
...
What are the exact steps to make this a template?

You say the template goes in the startup folder. Which is the Word
startup
folder? Is it C:\Program Files (x86)\Microsoft Office\Office12, or in
C:\Program Files (x86)\Microsoft Office\Templates, or somewhere else?

Does the name of the template file matter? Or does the first line "Sub
MailMergePropagateLabel()" do the mapping over the bad default command
regardless of the template name?

I've tried several incatations of the template file, but I am still not
getting the Address Block propogating properly across the label
document
after hitting "Update Labels".

By the way, I'm not on a tablet PC, but on a touch enabled desktop. You
are
going to see many more people run across this bug as Win7 drives more
touch
PC volume into the market.

Thanks,
Bob




"Doug Robbins - Word MVP on news.microsof" wrote:

Sounds like you might be using a Tablet PC or a PC with some form of
Tablet
functionality.

Use the following macro to overcome the problem with propagation of mail
merge field fields with a label type mail merge when using a Tablet PC
and
some other Computers that have Tablet PC Functionality available:

Sub MailMergePropagateLabel()

Dim atable As Table

Dim i As Long, j As Long

Dim source As Cell, 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



It is suggested that you put this 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

"BK" wrote in message
news
I'm using mswordxp. I've inserted my merge field in the first
column/row
of
the label template and clicked on the update icon in the tool bar and
have
no
response. Shouldn't it update and insert "next record" in every cell?





Reply
Thread Tools
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Mail Merge Labels "Update Labels" greyed out Dianne Griffin Microsoft Word Help 6 April 5th 23 11:31 AM
Mail merge with labels ~ glitch in update all fields Lisa Microsoft Word Help 3 April 6th 13 11:45 AM
Mail Merge Update Labels Not Working Alice Microsoft Word Help 4 February 4th 09 06:46 AM
My mail merge for labels will only update the first 3 labels Kelcy Mailmerge 3 October 17th 08 01:17 AM
update all labels in a mail merge in 2007 EG Scott Mailmerge 2 May 10th 07 07:30 PM


All times are GMT +1. The time now is 11:14 AM.

Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 Microsoft Office Word Forum - WordBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Word"