Although different in approach, your code worked fine for me once I took out the reference to ListBox1 which apparently doesn't exist.
This is how I would write the same code, small differences.
Private Sub cmdCloseandSave_Click()
'write data to NC data sheet
Dim NR As Long
NR = Sheet3.Range("A" & Sheet3.Rows.Count).End(xlUp).Row + 1
Cells(NR, "A").Value = cboJob.Text
Cells(NR, "B").Value = txtDate1NCform.Text
Cells(NR, "C").Value = txtSONum.Text
Cells(NR, "D").Value = txtPcMks.Text
Cells(NR, "E").Value = txtProbDescrip.Text
Cells(NR, "F").Value = chkRework.Value
Cells(NR, "G").Value = chkRepair.Value
Cells(NR, "H").Value = opbtnAsIs.Value
Cells(NR, "I").Value = opbtnScrap.Value
Cells(NR, "J").Value = txtDisposition.Text
Cells(NR, "K").Value = txtReworkInst.Text
Cells(NR, "L").Value = txtReInsp.Text
Cells(NR, "M").Value = txtDate2NCform.Text
Cells(NR, "N").Value = chkCARyes.Value
Cells(NR, "O").Value = txtCARNum.Text
Cells(NR, "P").Value = txtCauseCode1.Value
Cells(NR, "Q").Value = txtTimeReq.Text
If MsgBox("One record written to Non-Conformance Data." & vbLf & vbLf & _
"Do you want to enter another record?", vbYesNo, "Continue?") = vbYes Then
cboJob.Text = ""
txtDate1NCform.Text = ""
txtSONum.Text = ""
txtPcMks.Text = ""
txtProbDescrip.Text = ""
chkRework.Value = False
chkRepair.Value = False
opbtnAsIs.Value = False
opbtnScrap.Value = False
txtDisposition.Text = ""
txtReworkInst.Text = ""
txtReInsp.Text = ""
txtDate2NCform.Text = ""
chkCARyes.Value = False
chkCARno.Value = False
txtCARNum.Text = ""
txtCauseCode1.Value = ""
txtTimeReq.Text = ""
cboJob.SetFocus
Else
Unload Me
End If
End Sub
Bookmarks