Solved

Mail Merge Recipient List in Word 2010

Posted on 2010-11-17
2
1,430 Views
Last Modified: 2012-05-10
In Word 2003 when doing a mail merge, you were able to click "Edit Recipient List" and get a lovely form view.  However, when you do it in Word 2007/2010, you are taken to the list view only with no option to get into that form view.  The list view is cumbersome in that they have to widen each column and enlarge the dialog box each time because it won't stay that way.  Any suggestions?  Thanks
0
Comment
Question by:Awight
2 Comments
 
LVL 4

Accepted Solution

by:
BrainB earned 250 total points
ID: 34159137
I wonder why use Word when Excel can do a more straightforward job.
Here is something I supplied in answer to another question.
File attached.
'=============================================================================

'- EXCEL "MAIL MERGE" TO PRINT LETTERS

'- Extract data from Excel worksheet and put into letter set up on another sheet

'- Message box option to Print or Print Preview at the beginning

'- Brian Baulsom November 2010

'=============================================================================

Sub MAIL()

    Dim Customers As Worksheet

    Dim FromRow As Long

    Dim LastRow As Long

    Dim Letter As Worksheet

    Dim ToRow As Long

    '-------------------------------------------------------------------------

    Dim Company As String

    Dim Contact As String

    Dim Address1 As String

    Dim Address2 As String

    Dim rsp

    Dim PrintOrPreview As String

    '-------------------------------------------------------------------------

    '- MESSAGE

    rsp = MsgBox("Do you wish to Print or just Preview" & vbCr _

        & "Yes       =  Print" & vbCr & "No        =  Print Preview" _

        & vbCr & "Cancel =  Exit", vbYesNoCancel)

    If rsp = vbCancel Then Exit Sub

    PrintOrPreview = IIf(rsp = vbYes, "PRINT", "PREVIEW")

    Application.Calculation = xlCalculationManual

    '-------------------------------------------------------------------------

    Set Customers = Worksheets("Customers")

    LastRow = Customers.Range("A65536").End(xlUp).Row

    Set Letter = Worksheets("Letter")

    '-------------------------------------------------------------------------

    '- LOOP CUSTOMERS

    FromRow = 2

    With Customers

    While FromRow <= LastRow

        Application.StatusBar = " Row " & FromRow & " \ " & LastRow

        '---------------------------------------------------------------------

            Company = .Cells(FromRow, "A").Value

            Contact = .Cells(FromRow, "B").Value & " " & .Cells(FromRow, "C").Value

            Address1 = .Cells(FromRow, "D").Value

            Address2 = .Cells(FromRow, "E").Value & ", " _

                    & .Cells(FromRow, "F").Value & " " _

                    & .Cells(FromRow, "G").Value

        '---------------------------------------------------------------------

        '- LETTER : CUSTOMER ADDRESS

        Letter.Range("B2").Value = Contact

        Letter.Range("B3").Value = Company

        Letter.Range("B4").Value = Address1

        Letter.Range("B5").Value = Address2

        Letter.Range("B9").Value = "Dear " & Contact

        '----------------------------------------------------------------------

        '- LETTER : ORDERS

        ToRow = 16

        While .Cells(FromRow, "A").Value = Company And FromRow <= LastRow

            Letter.Cells(ToRow, "B").Value = Customers.Cells(FromRow, "L").Value

            Letter.Cells(ToRow, "C").Value = Customers.Cells(FromRow, "I").Value

            Letter.Cells(ToRow, "D").Value = Customers.Cells(FromRow, "j").Value

            Letter.Cells(ToRow, "e").Value = Customers.Cells(FromRow, "k").Value

            FromRow = FromRow + 1

            ToRow = ToRow + 1

        Wend

        '=====================================================================

        '- PRINT THE LETTER

        If PrintOrPreview = "PRINT" Then

            Letter.PrintOut

        Else

            Letter.PrintPreview

            rsp = MsgBox("Please click OK to see more or Cancel", vbOKCancel)

            If rsp = vbCancel Then Exit Sub

        End If

        '=====================================================================

    Wend

    End With

    '-------------------------------------------------------------------------

    MsgBox ("Done")

    Application.StatusBar = False

    Application.Calculation = xlCalculationAutomatic

End Sub

'=============================================================================

Open in new window

Mail-Merge-Test-2003.xls
0
 

Author Comment

by:Awight
ID: 34400466
Thanks
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Like many others, we try and discourage users from printing documents unnecessarily and instead send or share them electronically. However, this doesn't always work and documents are still printed. With this simple solution, if the user tries to …
Shortcuts in Word Just the other day I had a training for Microsoft and they wanted me to show how well the new Windows and Office behaved on a touch device, which by the way is great, but it was only then that I realized that using keyboard shortc…
This Micro Tutorial well show you how to find and replace special characters in Microsoft Word. This is similar to carriage returns to convert columns of values from Microsoft Excel into comma separated lists.
This Experts Exchange video Micro Tutorial shows how to tell Microsoft Office that a word is NOT spelled correctly. Microsoft Office has a built-in, main dictionary that is shared by Office apps, including Excel, Outlook, PowerPoint, and Word. When …

920 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

17 Experts available now in Live!

Get 1:1 Help Now