I have read that main form properties such as Allow Deletions = No, or a main form query property being Snapshot etc., can propagate to a sub form but have not experienced this. If you can delete from the subform when opened directly, the inference is that there is something about the main form that is the cause. If you're not getting an error message and have not turned off warnings in code, then the only suggestion I have would be to copy the forms and alter the main form copy so as to base it on an updatable query and see what happens. If that solves it, maybe your main form source could calculate those fields on the form instead of in the query. If you are getting an error message, it might help to know what it is.
The more we hear silence, the more we begin to think about our value in this universe.
Paraphrase of Professor Brian Cox.