Is it possible to have a colored background on a form without it printing?

K

kristah

I have 2 virtually identical databases and move between them frequently
and would like to make the background on one form a different color
than the other but I don't want the background to print. Is it
possible to have a background on a form and only see it on the screen?
 
B

Bob Miller

First a question: Why would you want to print a form? I would be using
a report for printing.
That being said, if the background of a form is light enough, it will
print as white on a BW printer. Open the form in design view, select
properties and select something like light yellow inthe Background
Color field.
It would be easier to change the look of one db to distinguish between
the two, then no matter what form or report you were looking at on the
screen you could tell.
Stephan Lebans has code that shows you how to do this here:
http://www.lebans.com/changemdibackground.htm
You can modify some of it by hardcoding the RGB and running an autoexec
macro to run the code.
I use it to change the ugly gray default background whenever I open
Access. Now I have a pristine white bg. Thanks Stephan!
Some of this answer is tongue-in-cheek and begs the question:
When is a form not a Form?
Answer:
When it is a Report!
 
K

kristah

The databases I am using are used to track items. They are shared on a
network and the form is utilized to view the information; however, most
of the users have limited computer skills. I am a novice Access user, I
can use Access on a basic level. The databases contain virutally the
exact same information but must be split out into 2. I realize that I
could build a report to look identical to the form (which is what is
wanted) but this process would be quite tedius & the user would not
know how to only print one record. Is there another way to create a
report without first building a query? This is how I normally create
reports.

I did try just to change the color to a light yellow but it still
printed on my printer. Do you have any other suggestions? I like the
idea you suggested, but I haven't a clue how to make it happen in my
database.

Thanks for the response.
 
R

Rick Brandt

kristah said:
The databases I am using are used to track items. They are shared on
a network and the form is utilized to view the information; however,
most of the users have limited computer skills. I am a novice Access
user, I can use Access on a basic level. The databases contain
virutally the exact same information but must be split out into 2. I
realize that I could build a report to look identical to the form
(which is what is wanted) but this process would be quite tedius &
the user would not know how to only print one record. Is there
another way to create a report without first building a query? This
is how I normally create reports.

I did try just to change the color to a light yellow but it still
printed on my printer. Do you have any other suggestions? I like the
idea you suggested, but I haven't a clue how to make it happen in my
database.

Right-click your form in the db window and choose "Save as Report" (a few
seconds). Modify the resulting report to remove all colored backgrounds (couple
minutes). Finally add a button to your form that prints the current record in
the report (couple more minutes). It would have code like...

DoCmd.OpenReport "ReportName", acViewPreview,,"[PrimaryKeyField] = " &
Me![PrimaryKeyField]
 
B

Bill (The Original)

Maybe put a colored rectangle on the form and set the Display When
property to screen only?
 
Top