Solved

Mail Merge Recipient List in Word 2010

Posted on 2010-11-17
2
1,420 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
Comment Utility
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
Comment Utility
Thanks
0

Featured Post

What Is Threat Intelligence?

Threat intelligence is often discussed, but rarely understood. Starting with a precise definition, along with clear business goals, is essential.

Join & Write a Comment

Microsoft Word is a program we have all encountered at some point, but very few of us have dug deep into its full scope of features, let alone customized it to suit our needs. Luckily making the ribbon (aka toolbar, first introduced in Word 2007) wo…
Using Word 2013, I was experiencing some incredible lag when typing.  Here's what worked for me....
The viewer will learn how to make their project stand out over others by learning how to change colors and shapes, add spaces, change directions, and add bullets to their charts.
Office 365 is currently available in five editions. Three of them are for business use: Office 365 Business Essentials, Office 365 Business, and Office 365 Business Premium. Two of them are for home/personal use: Office 365 Home and Office 365 Perso…

743 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

13 Experts available now in Live!

Get 1:1 Help Now