Blog
How to Mail Merge from Excel to Word, Step by Step
A mail merge from Excel to Word turns each row of a spreadsheet into its own Word document: one letter, label or email per customer. Writing 120 price-change letters by copy and paste at three minutes each is six hours of work and a real chance of putting the wrong price on the wrong customer's letter. Connect the list to a template once and Word produces all 120 in a few minutes.
The merge itself is quick. The time goes into preparing the list beforehand and fixing dates, dollar amounts and ZIP codes at the end. Here's the whole process, a worked example, and the fixes for the problems that come up most.
Prepare the Excel list first
Word reads the first row of your sheet as field names. Microsoft's mail merge guide for Excel puts data preparation first for good reason; most merge problems start in the spreadsheet.

- Row 1 holds the column names; each row below is one recipient. No title rows or blank rows above the headers.
- One item per column. Keep first name, last name, company, street, city, state and ZIP in separate columns.
- No merged cells, blank rows or subtotal rows. Word turns every row into a document, including the ones you didn't mean.
- Short, unique column names without spaces: CustomerName, Contact, NewPrice, EffectiveDate.
- Format ZIP codes as Text so 02108 doesn't become 2108.
- Don't rename or move the file, sheet or columns after connecting it to Word.
How to run the mail merge in Word
Step 1: Choose the document type
Open your letter template in Word, go to Mailings > Start Mail Merge, and choose Letters, Email Messages, Envelopes, Labels or Directory. If you're new to it, Step-by-Step Mail Merge Wizard on the same menu walks through six steps in a side pane.
Step 2: Connect the Excel list
Click Select Recipients > Use an Existing List, choose the workbook, and pick the sheet that holds the list. Make sure First row of data contains column headers is checked.
Edit Recipient List shows the list as a table. Uncheck anyone who shouldn't get this mailing, or use the column arrows to filter and sort. Under Refine recipient list you'll find Sort, Filter, Find duplicates and Find recipient. Run Find duplicates before every mailing; a customer listed twice gets two letters, and they notice. Filters can combine conditions, such as State equals Ohio and Status equals Active, so you can target a mailing without touching the source file.
Step 3: Insert merge fields
Click where the customer name goes and choose it from Insert Merge Field; «CustomerName» appears. Do the same for contact, new price and effective date. For US addresses, Address Block and Greeting Line build the address and "Dear Ms. Carter," automatically. If your column names don't match what Word expects, Match Fields maps them.
Step 4: Preview the results
Click Preview Results and the fields fill with real data. Step through records with the arrows, watching for blank fields, wrapped lines that push a table to the next page, and number formats. Check for Errors flags records that would fail before you merge.
Step 5: Finish and merge
Choose Finish & Merge > Edit Individual Documents > All. Word creates a new document, Letters1, with one page per customer. Each page is plain text now, so you can hand-edit one customer's letter without affecting the others. Review it, then print or save as PDF. Print Documents skips the review step and sends the merge straight to the printer.
Worked example: a price-change letter to 120 customers
Northgate Supply is raising prices on several product lines effective November 1, and the sales operations lead has to notify 120 customers. Contacts and addresses live in the customer list workbook; new prices per customer are in a separate sheet from purchasing.
Step 1: Build one merge list
In the customer list, add OldPrice and NewPrice columns and pull prices by customer ID with =XLOOKUP(A2,Prices!A:A,Prices!D:D,"None"). Six customers return "None", so they go back to purchasing for a price. Fourteen with Status "Closed" are filtered out. The final list has 100 customers on a sheet named MergeList.
Step 2: Calculate the change in Excel
Add a numeric column for rules, =ROUND(NewPrice/OldPrice-1,3) named PctChange, and a display column, =TEXT(PctChange,"0.0%") named PctText. Word pulls the underlying value, not Excel's formatting, so the numeric column would show as 0.042 in the letter.
Step 3: Fix dates and dollar amounts with field switches
In preview, the effective date shows as 11/1/2026 and the new price as 12.5. Press Alt+F9 to show field codes and add switches: { MERGEFIELD EffectiveDate \@ "MMMM d, yyyy" } and { MERGEFIELD NewPrice \# "$#,##0.00" }. Press Alt+F9 again; the letter now reads "November 1, 2026" and "$12.50". Word's number switch doesn't multiply by 100, which is why the percentage comes from the PctText column.
Step 4: Handle missing contacts
Nine customers have no contact name, so "Dear ," would print. Replace the greeting with Rules > If...Then...Else...: if Contact is blank, insert "Dear Purchasing Manager,", otherwise "Dear «Contact»,". An Excel column such as =IF(B2="","Dear Purchasing Manager,","Dear "&B2&",") gives the same result if your team edits the list more often than the template.
Step 5: Change the wording for larger increases
For customers whose increase is above 5%, the second paragraph should explain the raw material costs behind it. Another If...Then...Else... rule on PctChange, greater than 0.05, inserts that paragraph only where it applies.
Step 6: Spot-check and send
In the merged document, open the first page, the last page and the three largest increases, and check each number against MergeList. Then save PDFs for email or print with labels for mailed copies.
👉 Remove Duplicates in Excel: 4 Ways and Which Columns to Pick
Labels, envelopes and email
For labels, choose Start Mail Merge > Labels. In Label Options, pick the label vendor and product number printed on the package, such as Avery 5160. Place the fields in the first label, then click Update Labels to copy the layout to the rest. Print a test sheet on plain paper and hold it over a label sheet before using the real stock.
To merge to email, the list needs an email column and the desktop version of Outlook must be your default mail app. Choose Finish & Merge > Send Email Messages, select the email column in To, type a subject, and Word sends one message per row. As Microsoft's mail merge overview describes, the merged content becomes the body of each email, so if customers need the letter as a PDF attachment, save the individual PDFs and send them separately.
Version differences
The Mailings tab is the same in Microsoft 365, Word 2021, 2019 and 2016 for Windows. Word for Mac merges from the same tab and may ask you to confirm a range when you pick the workbook. Word for the web can't start a mail merge, so run the merge in the desktop app and share the merged document afterward. Any .xlsx list connects regardless of Excel version; if the sheet has been converted to a table, the connection dialog lists both the sheet and the table, so pick the one with your headers.
When the merge doesn't work
- "Word could not find the data source." The workbook was moved or renamed. Reconnect with Select Recipients, and keep one fixed file name and location for the list.
- Excel changes don't show up. Word reads the list when the template opens. In Edit Recipient List, select the data source and click Refresh. Close the workbook in Excel first; an open file can block the connection.
- ZIP codes lost their leading zero. They were stored as numbers. Reformat the column as Text and re-enter, or build a text column with
=TEXT(A2,"00000"). - Blank pages in the merged document. Formatted but empty rows at the bottom of the list. Uncheck them in Edit Recipient List or delete the rows in Excel.
FAQ
Q. Can I list several customers on one page?
Choose Start Mail Merge > Directory. Records flow one after another instead of one per page, so a table row with merge fields becomes a full customer list.
Q. A customer has several products. How do I put them all on one letter?
A merge uses one row per document, so combine the products into one cell in Excel first: =TEXTJOIN(", ",TRUE,FILTER(Items!B:B,Items!A:A=A2)) gathers every product for that customer ID.
Q. Can I save each letter as a separate PDF?
There's no built-in per-record PDF option. Save page ranges from the merged document as PDFs, or merge one record at a time by setting the record range in Finish & Merge.
Q. How do I reuse the setup next month?
Save the template; it keeps the fields and the connection. Replace the data in the same workbook, at the same location, and reopen the template.
How inline AI prepares a mail merge
inline AI opens the customer list, the new price sheet and the Word template together, and when you ask for "letters to active customers with their new prices," it matches the two workbooks by customer ID into one list and writes each customer's letter. With ARP, customers and prices already live in one place, so the letters go out the day prices change.
Hand your documents and your company’s work to inline AI.
Keep a file open, say what you need, and AI edits it or drafts a new one. Add the company AI OS and AI runs the rest of the work, ERP included.
Book a demo



