I have three tables, one table is employees with their extension, another
table with computer system configuration (serial #, OS, Office) another table
has the printers (serial #, make/model, ink). I have put together a form
that puts all three in one view. Form goes like this:
Employee Name and their extension, computer serial number of their computer
with a command button to open the computer form showing all the information,
and finally printer serial number with a command button opening the printer
form, showing all the information.
What I want to do is have a checkbox for the printer. If an employee has a
printer on their desk, I want to place a checkmark in the checkbox and have
the printer serial number show up. If the employee does NOT have a printer,
I want the checkbox unchecked and the printer serial number text box to be
hidden.
Right now, what it is doing is, if I place a checkmark for an employee who
has a printer, save the record, go to an employee record who does NOT have a
printer, the checkbox is checked and the printer serial number is visible but
blank. If I place a check in the checkbox, the printer serial number is
visible, it stays checked for all records with the printer serial visible, if
I uncheck, printer serial number hides, all records are unchecked with
printer serial # hidden.
tina said:
Record three has no printer, therefore, should
not have a checkmark and printer visable.
maybe i have misunderstood what you're doing here. the code does nothing to
add or delete a checkmark in the table's Yes/No field - it only acts to on
what is there. you (or somebody) has to enter or remove a checkmark from
each record, according to whether or not there is a printer associated with
the record.
the code in the form's OnCurrent event shows or hides the subform (i am
assuming that PrinterSerial is the name of the subform control) in the
current record based on whether or not there is a checkmark in the Yes/No
field for that record. the same code in the checkbox control's AfterUpdate
event shows or hides the subform based on the new value entered in the
Yes/No field.
Should there be a "IF" statement/code?
Me!PrinterSerial.Visible = Nz(Me!printchk = True, False)
works exactly the same as
If Nz(Me!printchk = True, False) = True Then
Me!PrinterSerial.Visible = True
Else
Me!PrinterSerial.Visible = False
End If
use either one, to suit yourself.
if you're doing something different than what i understood from your posts,
please post a more detailed explanation of the table(s), the form/subform,
and what you're trying to accomplish.
hth
Chip1035 said:
I want to thank you for your help... I really appreciate it!
Although,
it
still is not working...
The error has gone away, but the oriniginal problem persists. Record one
has no printer, no checkmark, no printer visable. Record two has a printer,
place a checkmark, printer is visable. Here is the problem... When I
go
back
to record one or go to record three, checkmark is present and printer is
visable, when it should not. Record three has no printer, therefore, should
not have a checkmark and printer visable.
Should there be a "IF" statement/code?
:
try
Me!PrinterSerial.Visible = Nz(Me!printchk = True, False)
hth
Found it... Now, when I access the form, I get an error:
Run-Time error '94'"
Invalid use of Null
Click on Debug and it brings me to the Form_Current line with the code
highlighted. Here is my code
PrinterSerial.Visible = Me!printchk = -1
^---Is the name of textbox ^---Is the name of the checkbox
I want visable if checkbox is
checked, not if check box is
not checked
If I click on End, tehn go fourth with checking the checkbox, no error
comes
up but still does what I explained earlier.
:
in design view, when you open the Properties box, make sure the
Properties
box's title bar says Form - not Section, or anything else. if it doesn't
say
Form, then double click in the gray square in the upper left
corner
of
the
design view window, at the junction of the vertical and horizontal
rulers;
that should change the Properties box title bar to Form. then
click
the
Events tab and proceed as stated in my previous post.
hth
I cannot locate OnCurrent event procedure. I am using Access 2000, am
I
missing something, I feel like this is suppose to be right in front of
me.
I right click on the an emtpy area in Design View, select Properties,
cannot
see a OnCurrent.
:
in the table underlying the form, you should have a field to store
the
Yes/No value re printer availability. make sure that field is
included
in
the form's RecordSource. bind the checkbox control to the Yes/No
field
(set
the checkbox control's ControlSource to the name of the
field).
then
include
your code in the form's OnCurrent event procedure, and in the
checkbox
control's AfterUpdate event procedure. to add the code:
1. open the form in design view.
2. open the Properties box (if it's not already open), click
on
the
Events
tab, and then double click in the white space at the right
of
the On
Current
event (first event listed). Access will create the event procedure
and
open
the VBA Editor window, with the cursor inside the procedure.
3. enter your line of code, as
Private Sub Form_Current()
PrinterControl.Visible = (Me!CheckBoxName = -1)
End Sub
4. go back to form design view.
5. click on the checkbox control to select it.
6. in the Properties box, again double click on the AfterUpdate
event
line.
7. enter your code inside the procedure, same as before.
hth
This is what I got
Inventory Form which shows employee name, extension, computer
serial
number
and a checkbox for printer. When the checkbox is checked, a
subform
shows
the printer's serial number.
I have the following code as an AfterUpdate event
PrinterControl].Visible = Me![CheckBoxName] = -1
Now, when I view a record and the checkbox is empty, the next
record
has
the
checkbox empty, but if I want to place a checkbox to show that
employee
has a
printer, the previous record has the checkbox checked with the
printer
subform empty. If I uncheck the record and go back to the one
that
should
be
checked, I find the checkbox unchecked.
It was suggested I enter the code above in the Form's current
event.
How
can I access the Form's current event, in order to place
the
code
there?
If
needed... If there is another code all together, bring it
on
so I
could
try
it. NOTE: I am not a pro at Access, rather just a beginner...
Thank
you
for any and all help, in advance...