The following will warn you that you are entering a choocie that is not in the list. I will allow you to continue and enter the new choice. It updates the undelying table.
If you do not like them to enter a new choice, just take that part out.
Set the Limit To List property of your combo box to YES
In the OnNotInList event procedure insert the following code
Private Sub YourFieldName_NotInList(NewData As String, Response As Integer)
Dim db As DAO.Database, rs As DAO.Recordset
If MsgBox("You entered a value that is not in the list. Would you like to continue and add it?", vbYesNo + vbDefaultButton1 + vbExclamation, "Add New Value?") = vbYes Then
Set db = CurrentDb
Set rs = db.OpenRecordset("tblYourTableName")
With rs
.AddNew
!SubjectName = NewData
.Update
.Close
End With
Response = acDataErrAdded
Else
MsgBox "Clear your entry or select a value from the list.", vbOKOnly, "Addition cancelled"
Response = acDataErrContinue
End If
Set rs = Nothing
End Sub