Displaying related data in subform is not the same as saving into record. There are techniques to display related info without saving to table. If you save the MarkTypeID there is no reason to save the descriptive Type, and vice versa. Having now seen your db I do see that you are not saving both ID and descriptor into MarkMaintenance.
You should set textboxes in subform as Locked Yes and TabStop No: LocationID, type, marking.
The copy/paste code is causing duplication of unique index. Don't use it. Just move to new record then populate fields.
Code:
Dim intID As Integer
intID = Me.MarkTypeID
DoCmd.RunCommand acCmdRecordsGoToNew
Me.InstalledBy = Forms!frmeditform!cmbBy
Me.cmbmaterialID = Forms!frmeditform!cmbDefaultMaterial
Me.MaintInstallDate = Forms!frmeditform!MaintDate
Me.MarkTypeID = intID
With Forms!frmeditform!frmInspectionHistory
.SetFocus
DoCmd.GoToRecord , , acNewRec
!InspectionDate = Forms!frmeditform!MaintDate
!Inspector = Forms!frmeditform!txtInspector
!Condition = 100
End With