[AccessD] Select Range of Records ...Word from Access

William Hindman dejpolsys at hotmail.com
Thu Aug 21 09:33:44 CDT 2003


...I only wish ...but due to client requirements, the document has to be 
edited before it can be printed ...things like names wrapping have to be 
corrected before it can be printed :((((

William


>From: "Bryan Carbonnell" <Bryan_Carbonnell at cbc.ca>
>Reply-To: Access Developers discussion and problem 
>solving<accessd at databaseadvisors.com>
>To: <accessd at databaseadvisors.com>
>Subject: Re: [AccessD] Select Range of Records ...Word from Access
>Date: Thu, 21 Aug 2003 09:08:30 -0400
>
>William,
>
>Why didn't I see the obvious.
>
>Why not just merge to the printer and NOT to a document?
>
>That way the user doesn't have to print the document manually?
>
>Just before the line:
>
>objWord.MailMerge.Execute
>
>add
>
>objWord.MailMerge.Destination = wdSendToPrinter
>
>Just a thought.
>
>Bryan Carbonnell
>bryan_carbonnell at cbc.ca
>
> >>> wdhindman at bellsouth.net 20-Aug-03 10:56:20 PM >>>
>...ok ...just don't ask how I get into these things ...and if this seems
>like a JC post, I really don't want to hear about it :(
>
>...I have a pretty good client who has been printing badges for his
>tradeshows from a db I wrote for him ...merging to a Word document and
>printing on preformatted badges ...piece of cake.
>
>...now he's decided that with his nifty new $18K heavy duty high speed 
>color
>printer (NEVER buy a Minolta printer) that he can do the entire print job
>in-house ...including some heavy duty badge graphics ...so after untold
>hours (paid hourly) of formatting this wonderful new badge with umpteen
>changes upon umpteen changes we finally get to the dirty deed of printing
>badges for a forthcoming show ...test pass of a few hundred records runs
>fine ...he's impressed ...I'm relieved ...go on to next client :)
>
>...his badge person runs the badge print process on the entire list and
>everything on the db side works fine ...in this case there are 4200+ badges
>to print ...and therein lies my tale of woe :(
>
>...the new improved graphics in-house badge has four records per 11x17 
>sheet
>...and those 4200 records when merged into a new word document produce a
>file more than 75mb in size ...Word chokes at 32mb ...boy does it ever
>choke! :(((((
>
>...complete redo of the badge template doc cuts the doc size by a quarter
>...can't seem to squeeze any more out of it :(
>
>...so I have to somehow cut the size of the file significantly ...I want it
>under 20mb so that editing is halfway reasonable.
>
>...I thought about splitting the file into four parts at the point of
>producing the merged document ...this would be the cleanest solution from
>the user standpoint ...they'd just get four print-jobs instead of one 
>...but
>I'm not a Word guru by any means and have no clue how to do that in the 
>VERY
>short timeframe I have to work with ...but if there is a Word guru out 
>there
>my current code is:
>
>Function BuyerBadges()
>     Dim objWord As Word.Document
>     Set objWord = GetObject("F:\Document Masters\Buyer
>Documents\BuyerBadges.doc", "Word.Document")
>     ' Make Word visible.
>     objWord.Application.Visible = True
>     ' Set the mail merge data source as the JemsXP database.
>     objWord.MailMerge.OpenDataSource _
>             Name:="C:\Program Files\JemsXP\JemsXP.mdb", _
>             LinkToSource:=True, _
>             Connection:="TABLE tblTempBuyerBadges", _
>             SQLStatement:="Select * from [tblTempBuyerBadges] WHERE
>(((tblTempBuyerBadges.PrintFlag)= True))"
>          ' Execute the mail merge.
>          objWord.MailMerge.Execute
>End Function
>
>...assuming I can't successfully split the document at the merge point, it
>seems that selecting only a partial range of records to print at one time 
>is
>the next best solution ...it isn't very user friendly but if it'll work,
>that's life. I currently use a "Select" button on a continuous form to set 
>a
>print flag on every record in a temp table and then use the Print Flag as
>the where condition in the merge sql as above ...individual records can be
>selected from the bound form as well but I can't very well ask the users to
>click on a thousand individual records ...so I need to change the select
>code below to pick a range of records to print as well as retain a "Print
>All" option. ...the thing is I'm brain dead at the moment and can't think 
>of
>how best to go about implementing it ...any help for the battle weary would
>be deeply appreciated ...I have to have this working eleven short hours 
>from
>now :((((((
>
>Private Sub cmdSelect_Click()
>On Error GoTo Err_cmdSelect_Click
>
>     DoCmd.SetWarnings False
>     DoCmd.OpenQuery "qryBuyerBadgesSelect"
>     DoCmd.SetWarnings True
>     Me.Refresh
>
>Exit_cmdSelect_Click:
>     Exit Sub
>
>Err_cmdSelect_Click:
>     MsgBox err.Description
>     Resume Exit_cmdSelect_Click
>
>End Sub
>
>Private Sub cmdPrintSelected_Click()
>     DoCmd.RunCommand acCmdSaveRecord
>     DoCmd.Close acForm, "frmBuyerBadges"
>     BuyerBadges
>
>End Sub
>
>William Hindman
>So, then, to every man his chance -- to every man, regardless of his birth,
>his shining golden opportunity -- to every man his right to live, to work,
>to be himself, to become whatever his manhood and his vision can combine to
>make him -- this, seeker, is the promise of America.
>-- Thomas Wolfe
>
>
>_______________________________________________
>AccessD mailing list
>AccessD at databaseadvisors.com
>http://databaseadvisors.com/mailman/listinfo/accessd
>Website: http://www.databaseadvisors.com
>_______________________________________________
>AccessD mailing list
>AccessD at databaseadvisors.com
>http://databaseadvisors.com/mailman/listinfo/accessd
>Website: http://www.databaseadvisors.com

_________________________________________________________________
<b>MSN 8:</b> Get 6 months for $9.95/month. 
http://join.msn.com/?page=dept/dialup



More information about the AccessD mailing list