Why Word Mail Merge Adds Extra Decimals to Number Fields From Excel
🔍 WiseChecker

Why Word Mail Merge Adds Extra Decimals to Number Fields From Excel

When you run a mail merge in Word using an Excel spreadsheet as the data source, number fields such as prices, quantities, or percentages may appear with unexpected extra decimals — for example, 25.0000 instead of 25 or 19.990000000000002 instead of 20. This happens because Word interprets numeric data from Excel as floating-point values rather than as formatted text or currency. The extra decimals are not a sign of data corruption; they are a side effect of how Word’s mail merge engine reads cell values from the Excel workbook. This article explains exactly why Word adds these decimals and provides three reliable methods to remove them so your merged documents display clean numbers.

Key Takeaways: Fixing Extra Decimals in Word Mail Merge Numbers

  • Data source formatting in Excel: Formatting cells as Text or using the TEXT function prevents Word from reading raw floating-point values.
  • Mail merge field switch \# “0.00”: Adding a numeric picture switch to the MERGEFIELD code in Word forces the output to two decimal places.
  • Database field connection via DDE: Using Dynamic Data Exchange instead of the default OLEDB connection preserves Excel’s displayed formatting.

ADVERTISEMENT

Why Word Mail Merge Reads Excel Numbers as Floating-Point Values

When you connect Word to an Excel workbook during a mail merge, Word does not use the cell’s displayed format — it reads the underlying cell value. Excel stores all numbers in a binary floating-point format known as IEEE 754 double-precision. A number like 19.99 is stored as an approximation: 19.989999999999998. Word’s mail merge engine retrieves this raw value and converts it to text, which can produce long decimal strings such as 19.989999999999998 or 25.000000000000000. This behavior is not a bug; it is the expected result of Word querying the Excel data source through the default OLEDB provider.

The problem appears most often with currency fields, percentages, and calculated columns. Excel’s displayed formatting (for example, showing 19.99 or 25%) is a visual layer only — the underlying cell holds the full floating-point number. Word ignores Excel’s number format settings when it imports the data. To work around this, you must either prepare the Excel data so Word receives a text string, or instruct Word to format the merged number using a field switch.

Why the Default OLEDB Provider Causes Extra Decimals

Word’s default connection method for Excel data sources is the OLEDB provider. This provider reads the first eight rows of each column to guess the data type. If the column contains mostly numbers, OLEDB treats the entire column as a floating-point (Double) field. All values in that column are then returned as floating-point strings, including the extra decimal digits. Even if you format the column as Currency or Number in Excel, the OLEDB provider disregards that formatting and returns the raw binary value.

Three Methods to Remove Extra Decimals From Mail Merge Number Fields

Each method below addresses the root cause at a different stage of the merge process. Method 1 modifies the Excel source, Method 2 works inside Word after the merge fields are inserted, and Method 3 changes how Word connects to the Excel file. Choose the method that best fits your workflow.

Method 1: Format the Excel Column as Text Before the Merge

This method prevents Word from reading the number as a floating-point value by converting the data to a text string in Excel. The text string retains the displayed number format exactly as you see it in Excel.

  1. Open the Excel workbook and select the column
    Click the column header letter (for example, column B) that contains the number field causing extra decimals.
  2. Apply the Text number format
    On the Home tab, click the Number Format dropdown and choose Text. If the column already contains data, Excel will warn that the number format cannot be changed after data is entered. Click OK to dismiss the warning, then re-enter the values in the column or use the next step to convert existing data.
  3. Re-enter existing values using a helper column
    Insert a new column next to the original. In the first cell of the new column, enter a formula like =TEXT(A1,"0.00") where A1 is the first cell of the original number column and “0.00” is the number format you want to display. Drag the formula down to copy it to all rows. Copy the new column and paste it as Values over the original column to remove the formula dependency. Delete the helper column.
  4. Save the workbook and refresh the mail merge
    Save the Excel file. In Word, open the Mailings tab, click Select Recipients, and choose Use an Existing List. Browse to the updated workbook and select the sheet. Word will now read the column as text, and the merged numbers will appear exactly as formatted in the TEXT formula.

Method 2: Add a Numeric Picture Switch to the Merge Field in Word

This method works entirely inside Word without changing the Excel data. You modify the merge field code to tell Word how many decimal places to display.

  1. Insert the mail merge field as usual
    On the Mailings tab, click Insert Merge Field and select the number field. A placeholder such as «Price» appears in the document.
  2. Display the field code
    Right-click the merge field placeholder and select Toggle Field Codes. The field code changes to something like { MERGEFIELD Price }.
  3. Add the numeric picture switch
    Inside the curly braces, after the field name, type a space, a backslash, a number sign, and then the format pattern in double quotes. For two decimal places, the code becomes { MERGEFIELD Price \# "0.00" }. For no decimals, use { MERGEFIELD Price \# "0" }. For currency with a dollar sign, use { MERGEFIELD Price \# "$#,##0.00" }.
  4. Toggle back and preview
    Right-click the field code again and select Toggle Field Codes to return to the placeholder view. Click Preview Results on the Mailings tab to check that the number now displays with the correct decimal places.

Method 3: Connect to Excel Using Dynamic Data Exchange (DDE)

This method changes the connection method from OLEDB to DDE, which preserves Excel’s displayed formatting. DDE is an older protocol, but it reads the formatted value that Excel shows on screen rather than the raw floating-point number.

  1. Open the Mail Merge Wizard
    On the Mailings tab, click Start Mail Merge and choose Step-by-Step Mail Merge Wizard. The wizard pane opens on the right side.
  2. Select the Excel file using DDE
    In step 3 of the wizard, click Browse. In the Select Data Source dialog, locate your Excel file. Do not click Open yet. Click the dropdown arrow next to the Open button and select Open with DDE. A dialog appears asking which sheet to use; select the correct sheet and click OK.
  3. Confirm the data source
    Word may ask you to confirm the data source. Click OK. The merge fields will now pull the formatted values from Excel, including the decimal places as they appear in the cell.
  4. Complete the merge as usual
    Insert merge fields and finish the merge. The numbers should match the Excel display exactly.

ADVERTISEMENT

If Word Still Shows Extra Decimals After the Main Fix

Word Displays 25.000000000000000 Instead of 25

This indicates that the column is still being read as a floating-point value. Apply Method 1 again, but ensure the Excel column is formatted as Text before you add any data. If the data already exists, use the TEXT function to convert the entire column to a text string with the desired format. After saving the workbook, close and reopen Word before refreshing the data source.

Word Shows 19.989999999999998 Instead of 19.99

This is the classic floating-point rounding artifact. The numeric picture switch in Method 2 is the fastest fix. Use the pattern \# "0.00" to force two decimal places. If the switch does not work, check that you typed a space before the backslash and that the field code has no extra spaces inside the curly braces.

DDE Connection Fails or Is Grayed Out

The DDE option may be unavailable if your Excel workbook is open in another program or if the file is stored on a network drive. Close Excel and any other program that has the file open. Copy the workbook to a local folder and try again. If the Open with DDE option still does not appear, run the Microsoft Office installation repair tool to re-register the DDE DLL files.

OLEDB vs DDE Connection: Number Handling Differences

Item OLEDB (Default) DDE (Legacy)
Data type detection Scans first 8 rows to guess column type Reads cell display format directly
Number precision Returns raw IEEE 754 floating-point value Returns formatted text as shown in Excel
Decimal display May show many extra digits (e.g., 25.000000000000000) Shows exactly the number of decimals set in Excel
Compatibility Works with all modern Excel versions May fail with very large workbooks or network files
Setup effort No extra steps needed Requires manual selection of Open with DDE

After applying one of the three methods, your mail merge documents will display numbers exactly as you intend — without hidden decimal digits. If you regularly merge numeric data from Excel, consider building a reusable template that includes the numeric picture switch on every number merge field. This approach saves time and prevents the problem from recurring in future merges. For columns that must stay as numbers in Excel, the TEXT function combined with a helper column provides the most predictable results across different Word versions.

ADVERTISEMENT