I think it is easier if you only have two choices OK or cancel. So I modified your code. I built a table and a form. The code executes, but it inserts only one Intern Smart ID record.
Code:
Option Compare Database
Option Explicit
Private Sub Statuscbo_AfterUpdate()
Dim SMARTID As String, RGDLimit As Date, OGDLimit As Date, ThisYear As Integer, sSQL As String, AddPart As String
Dim Msg, Style, Title, Response
On Error GoTo ErrHandler
ThisYear = Year(Date)
' Debug.Print ThisYear
' Setting the limit dates for Original and Revised Grad Dates (OGDLimit and RGDLimit respectively)
OGDLimit = DateSerial(ThisYear, 7, 1) '#7/1/2013#
RGDLimit = DateSerial(ThisYear, 8, 1) '#8/1/2013#
' Setting the value of the SMARTID variable based upon the below criteria
If Me.Statuscbo = "Approved" And Formcbo = "Award Length Change Request" And Me.Active_Request_ = "Yes" Then
'get the current value for smart ID
SMARTID = Me.SMART_ID
' Appending SMARTIDs to Intern Tracker for those participants whose change in grad date requires them to
' go on an internship. This is nested within the above If...Then statement and will only execute if the above conditions
' are met.
If Me.ReGradDate > RGDLimit And Me.OGradDate < OGDLimit Then
Msg = "Add Participant to Internship Tracker?" ' Define message.
Style = vbYesNo + vbQuestion + vbDefaultButton2 ' Define buttons.
Title = "What to do?" ' Define title.
' Display message.
Response = MsgBox(Msg, Style, Title)
If Response = vbYes Then ' User chose Yes.
sSQL = "INSERT INTO InternsTracker ([SMART ID])"
sSQL = sSQL & " Values('" & SMARTID & "');"
' Debug.Print sSQL
CurrentDb.Execute sSQL, dbFailOnError
'--- debugging---
MsgBox "Intern value Inserted"
'-- debugging---
Else ' User chose No.
Msg = "Intern not added" ' Define message.
Style = vbOKOnly + vbInformation ' Define buttons.
Title = "NOT ADDED" ' Define title.
Response = MsgBox(Msg, Style, Title)
'
End If
End If
End If
Exit Sub
ErrHandler:
MsgBox Err.Number & ": " & Err.Description
End Sub
Using an Input box where there are only two choices allowed and requiring the user to type in something allows errors to be made. So (I think) the message box option is easier. You only have two buttons....
Is this closer to what you want?