Freeze fields with a command button click

  • Thread starter Thread starter PJ
  • Start date Start date
P

PJ

How would I lock multiple fields so a user can not change based on a click of
a button. There is a date field so once it hit month end I would like to
freeze a user from changing the record. How is that possible?


Thanks
 
PJ -

Use the On Current event so this occurs each time a new record is displayed
(use your fieldnames):

If Me.DateField < DateSerial(Year(Date()),Month(Date(),1) Then
Me.Field1.Locked = True
Me.Field2.Locked = True
...
Me.Fieldn.Locked = True
Else
Me.Field1.Locked = False
Me.Field2.Locked = False
...
Me.Fieldn.Locked = False
End If
 
Thanks again Daryl. I guess I am not getting this. Would this go on the
form's current event. I wanted a button that I would click on that at any
given time I can click on and it would lock 6 fields and you could only read
them. Where would they below code go?

Thanks!!
 
One approach would be simply to call the form's Current event in the
button's Click event:

Private Sub MyButton_Click()

Call Form_Current()

End Sub
 
PJ -

As Douglas said, you can call the code from a button. If you don't run it
also on the On Current event, then when a user scrolls to a new record, the
formatting won't adjust to the new values. That is why I suggested the
form's On Current event.
 
Back
Top