我试图在我的表单上循环一系列组合框,跳过空白然后将它们添加到数据库中,但它似乎失败了 - 任何想法我怎么能这样做?
For i = 1 To 8
If Not (("cboOption" & i).Value = "") Then
StrSQL = "INSERT INTO db (mID, uID) VALUES (("cboOption" & i).Value = "", StudentID.Value);"
DoCmd.SetWarnings False
DoCmd.RunSQL StrSQL
DoCmd.SetWarnings True
End If
Next
答案 0 :(得分:2)
嗯,我不是百分百肯定,但你的代码可能会抛出一个方法或数据没有识别错误。无论如何,以下代码应该对它进行排序。
For i = 1 To 8
If Len(Me.Controls("cboOption" & i).Value & vbNullString) <> 0 Then
StrSQL = "INSERT INTO db (mID, uID) VALUES (" & _
Me.Controls("cboOption" & i).Value & ", " & _
StudentID.Value & ");"
DoCmd.SetWarnings False
DoCmd.RunSQL StrSQL
DoCmd.SetWarnings True
End If
Next
如果值是字符串值,请确保将值包装在单引号内。
StrSQL = "INSERT INTO db (mID, uID) VALUES ('" & _
Me.Controls("cboOption" & i).Value & "', " & _
StudentID.Value & ");"