I am struggling to see the point of setting edits to no in design mode, only to unset them in form load?
Edit: ok, it seems that would allow just one record?
The subdatasheet is NOT a subform. It is using the properties of the parent form. If you want a subform, you need a real one. A way to have Two lists is to use two list view subforms on an unbound main form. The "left" subform is the main list. When you click on an item in the main form, the code in the click event requeries the "right" subform. The "right" subform is bound to a query that references the "left" subform.
Select ...
From ...
Where MyFK = Forms!mainform!subform1.Form!PKfield
Use intellisense in the QBE to get the syntax right.
The OP uses a form with datasheet view in the subform control.
Curiously, the change to AllowAdditions=True in the UF only works for the 1st record in the main form. AllowEdits works for all displayed subform masks.
/edit:
However, this is only the case in the datasheet view. If you use the subform as a continuous form, AllowAdditions works for all of them.
Code:
Private Sub Form_Load()
With Me.FRM_MESSAGES_RESPONSE_SENDER_MASTER_RESTRICTED.Form
.AllowAdditions = True
End With
End Sub
... this works only with continuous form, not with datasheet view.
If you press {F5} in the subform (without new record line) new records also allowed in the other records of main form.
Have you tried setting the AllowAdditions property in the form or subform's Current event so that it runs for EACH record instead of just once when the form loads?
I manually coded to lock the fields based on the id field. If it's a new record with no ID number then it enables the fields for inputs. I posted a sample db as well.