strConnection = [Driver={Microsoft Excel Driver (*.xls)};DriverId=790;Dbq=C:\MyExcel.xls;DefaultDir=c:\mypath;] &&& Not sure if I need this #DEFINE wdMainAndDataSource 2 #DEFINE wdSendToPrinter 2 #DEFINE wdDoNotSaveChanges 0 #DEFINE wdWindowStateMinimize 2 SET SAFETY OFF CD C:\VPMAPPS\TLP OPEN DATABASE ATLP_V SHARED SELECT * FROM property_v WHERE .t. INTO CURSOR t1 jprop_key=t1.cprop_pk Select; cprimary_owner as OwnerName,; cname2,; cname3,; cco_line as CareOfName,; caddress_b as Address,; ccity_a as City,; cstate_b as StateOrProvince,; czip_a as PostalCode,; cname as CountyName,; caddress_c as CountyAddress1,; ccity_b as CountyCity,; cstate_c as CountyState,; czip_b as CountyZip,; cphone_b as TreasurerPhone,; ctownship as TownshipRange,; csection as Section,; nparcel_no as ParcelNumber,; MLINE(clgl_desc,1,254) as LGL_DESC,; MLINE(cgeocode,1,254) as Geocode; From property_v Where cprop_pk=jprop_key And .T. Into Cursor npa COPY TO 1-NOTICE_OF_PENDING_ASSIGNMENT.XLS TYPE XL5 oWord = CREATEOBJECT("Word.Application") oWord.Visible = .T. oDoc = oWord.Documents.Open("C:\VPMAPPS\TLP\1 - NOTICE OF PENDING ASSIGNMENT.doc") oDoc.MailMerge.MainDocumentType = 0 oDoc.MailMerge.OpenDataSource("c:\Vpmapps\tlp\1-NOTICE_OF_PENDING_ASSIGNMENT.XLS",,,,,,,,,,,"Entire Spreadsheet",,,,8) oDoc.MailMerge.DataSource.FirstRecord = oDoc.MailMerge.DataSource.ActiveRecord oDoc.MailMerge.DataSource.LastRecord = oDoc.MailMerge.DataSource.ActiveRecord oDoc.MailMerge.Execute