Solved

Print form - Current record

Posted on 2009-07-13
25
2,603 Views
Last Modified: 2013-11-28
Hi Guys

Is there a way to print out the active form, current record, without using reports
I add a button in the design view which creates a macro, but it prints out the form but all the records, i need to print the form with the current record

Please advice
0
Comment
Question by:titorober23
  • 10
  • 8
  • 3
25 Comments
 
LVL 75
ID: 24842891
You would have to Filter the form to the desired record first.  You can easily do that with the built in Right Click menus ...  in this case, Filter By Selection >> Print >> Right click and Remove Filter/Sort.

mx
0
 

Author Comment

by:titorober23
ID: 24842910
is there a way to put that in code behind a button
0
 

Author Comment

by:titorober23
ID: 24842962
in this particular case it is already filtered because i am trying to print a subform, which contains all the records associated with the main form, but when i hit print it prints all the records in the subform for all the records in the main form, i need to print current form view with current record information
0
Enterprise Mobility and BYOD For Dummies

Like “For Dummies” books, you can read this in whatever order you choose and learn about mobility and BYOD; and how to put a competitive mobile infrastructure in place. Developed for SMBs and large enterprises alike, you will find helpful use cases, planning, and implementation.

 
LVL 75

Accepted Solution

by:
DatabaseMX (Joe Anderson - Microsoft MVP, Access and Data Platform) earned 200 total points
ID: 24842999
Actually ... try this:

Private Sub btnPrint_Click()

    DoCmd.PrintOut acSelection

End Sub

but it appears to directly to the printer ... no preview.  I've never used the PrintOut command before

mx
0
 
LVL 75

Assisted Solution

by:DatabaseMX (Joe Anderson - Microsoft MVP, Access and Data Platform)
DatabaseMX (Joe Anderson - Microsoft MVP, Access and Data Platform) earned 200 total points
ID: 24843027
Or something like this:

Private Sub btnPrint_Click()
   
    Me.Filter = "[ID] = " & Me![ID]
    Me.FilterOn = True
    DoCmd.RunCommand acCmdPrintPreview
    DoCmd.RunCommand acCmdRemoveFilterSort
   
End Sub

where ID is the Primary Key name of the main table.

mx
0
 
LVL 75
ID: 24843041
OK ... forget this line:

DoCmd.RunCommand acCmdRemoveFilterSort   ' that will cause an error.

mx
0
 

Author Comment

by:titorober23
ID: 24843066
No they did not work
thanks
0
 
LVL 75
ID: 24843068
If you are already on just one record ... this should work:

Private Sub btnPrint_Click()
   
    'Me.Filter = "[ID] = " & Me![ID]
    'Me.FilterOn = True
    DoCmd.RunCommand acCmdPrintPreview

End Sub


it does for me.

mx
0
 
LVL 75
ID: 24843081
what exactly is happening ?

mx
0
 

Author Comment

by:titorober23
ID: 24843095
when running it is taking me to code that i ahve in the main form On_resize event
0
 
LVL 75
ID: 24843115
not following ?

mx
0
 
LVL 74

Expert Comment

by:Jeffrey Coachman
ID: 24847918
titorober23,

1. The forms are not really meant to be printed, because of their graphical nature.

2. <print out the active form, current record, without using reports>
What is the reason why a report is unacceptable?
It is a faily common practice to print out a report synchronized to the selected (current) Form record.

3. How are you wanting to print the current record?

In other words, you need to be specific.
Please post a screenshot of your form.
Then post an example of the *exact* "printout" you are expecting.

Thanks.

JeffCoachman
0
 

Author Comment

by:titorober23
ID: 24849556
weel i was thinking it was easier and faster just to print current record view, instead of creating a report and try to replicate the form design
0
 
LVL 74

Expert Comment

by:Jeffrey Coachman
ID: 24850776
Then I see no reason why the snippet MX posted wouldn't work for you:
    DoCmd.PrintOut acSelection

Can you clearly define what you mean by "they did not work"?
error message?
Crash?
Wrong Printout?
...ect

That code works fine for me...

;-)

JeffCoachman
0
 

Author Comment

by:titorober23
ID: 24850879
Well they were sending to the printer all the records, it actually did the same thing that my original macro

I am trying to print out the currrent subform
0
 
LVL 75

Assisted Solution

by:DatabaseMX (Joe Anderson - Microsoft MVP, Access and Data Platform)
DatabaseMX (Joe Anderson - Microsoft MVP, Access and Data Platform) earned 200 total points
ID: 24851493
Here:  http:#a24843068 you said you were already on *just* the current record, ie already filtered ... so ... there is no reason this would not work:

Private Sub btnPrint_Click()  
    DoCmd.RunCommand acCmdPrintPreview
End Sub

OR ... to filter on just the current record:

Private Sub btnPrint_Click()
   
    Me.Filter = "[ID] = " & Me![ID]
    Me.FilterOn = True
    DoCmd.RunCommand acCmdPrintPreview
   
End Sub

I'm seeing this work right now in front of me ...

mx
0
 

Author Comment

by:titorober23
ID: 24851743
i guess what happens is the form that i am trying to print is a subform of another subform, where the main form is a switchboard that contains and loads different forms, when it tries to print, it activate the On_Resize event of the main switchboard form
0
 
LVL 75
ID: 24851801
"the form that i am trying to print is a subform of another subform,"

Ahh so ... well, ok ... that ... is going to be more complicated for sure. Whereas I do have cases where a form can be printed for convenience ...  forms with subforms are another matter.  As Jeff suggested ... maybe you should consider creating a report in this case.  Believe me ... wherein you *can* print forms (and I do it) ... there are many anomalies for sure.

mx
0
 

Author Comment

by:titorober23
ID: 24851830
yes i already design a report for it

thanks a lot
0
 
LVL 74

Expert Comment

by:Jeffrey Coachman
ID: 24853855
mbizup.

FWIW,

MX did give this his all by trying to give the asker exactly what they were after, (Printing from the form) by posting no less than 3 distict alternatives.

(Even I would not have gone that far)
;-)

I have no issue with MX being awarded all the points.
Suggesting a report is something MX would have eventually suggested on his own anyway.
;-)

I will be fine with whatever you decide.

;-)

Jeff
0
 
LVL 75
ID: 24854277
split is np.

mx
0

Featured Post

Three Reasons Why Backup is Strategic

Backup is strategic to your business because your data is strategic to your business. Without backup, your business will fail. This white paper explains why it is vital for you to design and immediately execute a backup strategy to protect 100 percent of your data.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article describes two methods for creating a combo box that can be used to add new items to the row source -- one for simple lookup tables, and one for a more complex row source where the new item needs data for several fields.
You need to know the location of the Office templates folder, so that when you create new templates, they are saved to that location, and thus are available for selection when creating new documents.  The steps to find the Templates folder path are …
Familiarize people with the process of utilizing SQL Server views from within Microsoft Access. Microsoft Access is a very powerful client/server development tool. One of the SQL Server objects that you can interact with from within Microsoft Access…
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …

685 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question