Try passing in an OpenArgs
For example, if I have a button which opens a form as read only I will put on the On Click event:
Private Sub ReviewForm_Click()
DoCmd.OpenForm "ReviewForm", , , , , , "ReadOnly"
End Sub
On the form that opens I will put on the On Load event
Private Sub Form_Load()...