this is what you had written on the cbomodel not on list.:
Private Sub cbomodel_NotInList(NewData As String, Response As Integer)
Response = MsgBox("[" & NewData & "] is not recognized in this database." & vbCrLf & vbCrLf & "Would you like to add it?", vbQuestion + vbYesNo, "Unrecognized Data")
If Response = vbYes Then
' DoCmd.OpenForm "frmMakeModel Subform", acNormal, , , acFormAdd, acDialog, _
' Me.cbomake.Column(0) & ";" & NewData
'-- Create a new Supplier record
Dim MySQL As String
MySQL = "Insert Into tblMakeModel(Model,MakeID) " & _
"Values(""" & NewData & """," & Me.cbomake.Column(0) & ")"
CurrentDb.Execute MySQL, dbFailOnError
Response = acDataErrAdded
Else
Response = acDataErrContinue
End If
End Sub
and this is what i am assuming would work on adapting for the simpler submodel field. ..and yes i know about assuming

Private Sub cbosubmodel_NotInList(NewData As String, Response As Integer)
Response = MsgBox("[" & NewData & "] is not recognized in this database." & vbCrLf & vbCrLf & "Would you like to add it?", vbQuestion + vbYesNo, "Unrecognized Data")
If Response = vbYes Then
' DoCmd.OpenForm "frmSubmodel", acNormal, , , acFormAdd, acDialog, _
' Me.cbosubmodel.Column(0) & ";" & NewData
'-- Create a new Supplier record
Dim MySQL As String
MySQL = "Insert Into tblsubmodel " & _
"Values(""" & NewData & """," & Me.cboSubmodel.Column(0) & ")"
CurrentDb.Execute MySQL, dbFailOnError
Response = acDataErrAdded
Else
Response = acDataErrContinue
End If
End Sub
is my thinking anywhere near what needs to happen?