locked
Mail merge without Word RRS feed

  • Question

  • Hello,

    I have a few admin documents which I would like to mailmerge some data from our Access db with.

    In some situations Word is not available. Some of the docs are fairly complex (Layouts etc...) and using an Access report will be very tedious to set up or maintain. The merge data is fairly simple being names, addresses etc...

    Is Word required to mailmerge (ie Can Access alone mailmerge and print with a doc / docx file)? If not, can a document be created and saved in a format that some fields can be merged without full MS Office installed (A PDF perhaps)?

     

    Thanks

    swas

    Monday, August 29, 2011 5:46 AM

Answers

  • Thanks Daniel.

    I was just playing with this!

    Because I only want to overprint info on forms, by saving the Word doc as a bitmap, then setting this to the report background picture, means the few pieces of data from my db can be overlaid. Alignment / registration isn't hugely important.

    Perhaps not the most elegant of solutions and not practical in all situations, but solves my problem.

     

    Thanks

    swas

    • Marked as answer by mr swas Wednesday, August 31, 2011 4:20 AM
    Wednesday, August 31, 2011 4:20 AM

All replies

  • The answer is "yes" and "no", depending on the method you use. I don't think there's a simple, low-maintenance method of achieving what you want to do (I've been trying to do something similar for some time, and the choice is basically between a moderately complex solution, and a high-maintenance solution.)

    If you want a simple method of running MS Word mailmerge from within Access VBA, you need MS Word to be installed to do that (since I believe the MS Word object model and methods are only available within Access VBA when MS Word is installed, and when you have the correct VBA References installed.)

    This doesn't mean to say that you cannot save files as .rtf or .doc or .docx or .pdf - using VBA code to write the files at a low level. Nothing stops you from doing that (only, that wouldn't necessarily be a simple solution without spending money on Office Addins which are sometimes not cheap when they're charged on a per-workstation basis.) And .doc is not necessarily a simple file-format to implement at a low-level (I've not investigated .rtf or .docx too thoroughly - I suspect those formats are simpler than .doc but not by much. I understand that the Office 2007/2010 formats include file compression as standard, and you'd have to implement various levels of stuff like that in order to do what you require).

    .pdf may be easier since Access has built-in methods of saving as .pdf - the 2007 version requires a free Addin from Microsoft (available for download, can be installed on any number of machines):

    http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=9943

    I think that Office 2010 includes "Save as .pdf" as standard. You may well be able to invoke it via VBA. I'd personally recommend trying that, and building some Access Reports (sorry but I think this may be your only option if you want to keep things relatively simple and don't want to rely on expensive 3rd-party Office Addins that may not offer you long-term upgrade continuity).


    Matthew Slyman M.A. (Camb.)
    Monday, August 29, 2011 9:20 AM
  • Thanks Matthew.

    Since I am not creating sentences with merge fields, rather filling in boxes, perhaps to have the basic documents saved as PDF's, printed then overprinted.

    Would it be possible from vba to print two documents (The base doc then the data overprint) onto the one page without feeding the sheet through twice?

     

    Thanks again.

    swas

     

    Monday, August 29, 2011 9:38 AM
  • I wouldn't recommend overprinting (particularly using a laser printer or photocopier) since the first pass through a laser printer (or photocopier) heats up the paper and rolls it through various rollers (in a curved path). If you are using cheap paper (or a cheap printer/copier), you may find that you get paper jams very frequently on your second pass. (If you plan to do this job frequently in the future, you may find this method a little burdensome too.)

    If you plan to print more than 1000-2500 of these letters (without editing the document content in-between), you might want to engage the services of a professional printer. Get them to pre-print your document and then just print the name and address on using your own printer. (This method is more economical at this scale.)

    If you're doing lots of short runs, printing tens or hundreds of documents at the same time and potentially changing the document in-between; you might consider printing the documents directly from your Access Report.

    Is there a legal reason you need to keep a copy on file as PDF or similar? Or can you get away with just printing the documents, and keeping intelligible records showing what letters you've produced and who you sent them to? Are there strong legal reasons why you need to keep copies of each person's document precisely in the same format as you sent it out to them?


    Matthew Slyman M.A. (Camb.)
    Monday, August 29, 2011 1:53 PM
  • Mr Swas

    While you seem to want to avoid using an Access report, I think you will find it the reliable solution. I've created many a report that used labels for the body and text boxes for the data. They always printed out exactly the same as the original .doc file after a bit of moving and arranging.


    Bill Mosca
    http://www.thatlldoit.com
    http://tech.groups.yahoo.com/group/MS_Access_Professionals
    Monday, August 29, 2011 3:15 PM
  • Hi swas,

     

    In addition to Bill's suggestion, using Reports for this, check below KB article out on how to achieve this:

    http://support.microsoft.com/kb/209562

     

    Hope that helps,

     

     


    Daniel van den Berg | Washington, USA | "Anticipate the difficult by managing the easy"
    Monday, August 29, 2011 5:36 PM
  • Thanks for the replies.

    The docs are only to generate semi-completed forms on an ad hoc basis for a customer to fill in the detail manually and return. I didn't think putting paper through twice would be workable, not just because of laser printer heat etc... but potential field registration / alignment issues and getting the second print orientation right etc... Hence the question whether two docs can me merged programatically from vba so only a single print of the two docs is done (Which I didn't think could be).

    A standard Access report is likely the best. I am not doing a letter which the MS support article touches on, rather a table style layout where various boxes are filled in with db detail where possible, so the doc user only add the required detail manually (With pen).

    I guess it is just as much mucking around laying out an Access report as to fiddling with drawing tables in Word.

     

    Thoughts appreciated.

    swas

     

    Monday, August 29, 2011 9:50 PM
  • Hi again,

     

    You might use the approach of the KB article and change the layout of the Report accoding your needs.

     


    Daniel van den Berg | Washington, USA | "Anticipate the difficult by managing the easy"
    Wednesday, August 31, 2011 3:23 AM
  • Thanks Daniel.

    I was just playing with this!

    Because I only want to overprint info on forms, by saving the Word doc as a bitmap, then setting this to the report background picture, means the few pieces of data from my db can be overlaid. Alignment / registration isn't hugely important.

    Perhaps not the most elegant of solutions and not practical in all situations, but solves my problem.

     

    Thanks

    swas

    • Marked as answer by mr swas Wednesday, August 31, 2011 4:20 AM
    Wednesday, August 31, 2011 4:20 AM