将每个循环中的 rsPhone 值插入到 strSQL MS ACCESS
Inserting rsPhone value from each loop to strSQL MS ACCESS
我有这段代码:
Private Sub cmdAdd_Click()
Dim dbs As DAO.Database
Dim rsPhone As DAO.Recordset
If IsNull(Me.listPrzyczyna) Or Me.listPrzyczyna = "" Then
MsgBox "Wybierz przyczynę awarii!", vbOKOnly, "Wymagane dane"
Me.listPrzyczyna.SetFocus
Else
Set dbs = CurrentDb
Set rsPhone = dbs.OpenRecordset("dbZmiana")
Do While Not rsPhone.EOF
Dim strSQL As String
Dim strSQLSMSSend As String
strSQL = "INSERT INTO dbAwarieOtwarte (nrMaszyny, nazwaMaszyny, Zglaszajacy, dataZgloszenia, dataZakonczenia, godzinaZgloszenia, Przyczyna, Obszar, Telefon, Komentarz) VALUES ('" & Me!txtNrMaszyny & "', '" & Me!txtNazwa & "', '" & Me!txtZglaszajacy & "', '" & Me!txtData & "', '" & Me!txtData & "', '" & Me!txtGodzina & "', '" & Me!listPrzyczyna & "," & Me!txtNazwa & "," & Me!txtNrMaszyny & "," & Me!txtObszar & "', '" & Me!txtObszar & "', '" & Me!txtTel & "', '" & Me!txtKomentarz & "');"
strSQLSMSSend = "INSERT INTO dbSMSSend (Przyczyna, Telefon) VALUES ('" & Me!SMSSendRequest & "', '" & txtTel & "');"
DoCmd.SetWarnings False
DoCmd.RunSQL strSQL
DoCmd.RunSQL strSQLSMSSend
DoCmd.SetWarnings True
rsPhone.MoveNext
Loop
rsPhone.Close
Set rsPhone = Nothing
dbs.Close
Set dbs = Nothing
DoCmd.Close
' DoCmd.OpenReport "repAwariaOtwarta", acViewPreview, , "ID=" & DMax("ID", "dbAwarieOtwarte")
End If
End Sub
它在 dbZmiana 中为每个 phone 数字循环,所以我为每个提供的数字分离了 strSQL 插入。
一切顺利,但我遇到了一个问题。在每个循环中,我想将 "looped" phone 数字作为字符串插入到 strSQLSMSSend 中。
这个号码应该进入 Telefon,我不知道如何在每个循环中引用那个 rs 值。
现在有一个 '" & txtTel & "' 值,我该如何插入 rs 值来代替它?
怎么样:
strSQLSMSSend = "INSERT INTO dbSMSSend (Przyczyna, Telefon) VALUES ('" & Me!SMSSendRequest & "', '" & rsPhone!txtTel.Value & "');"
我有这段代码:
Private Sub cmdAdd_Click()
Dim dbs As DAO.Database
Dim rsPhone As DAO.Recordset
If IsNull(Me.listPrzyczyna) Or Me.listPrzyczyna = "" Then
MsgBox "Wybierz przyczynę awarii!", vbOKOnly, "Wymagane dane"
Me.listPrzyczyna.SetFocus
Else
Set dbs = CurrentDb
Set rsPhone = dbs.OpenRecordset("dbZmiana")
Do While Not rsPhone.EOF
Dim strSQL As String
Dim strSQLSMSSend As String
strSQL = "INSERT INTO dbAwarieOtwarte (nrMaszyny, nazwaMaszyny, Zglaszajacy, dataZgloszenia, dataZakonczenia, godzinaZgloszenia, Przyczyna, Obszar, Telefon, Komentarz) VALUES ('" & Me!txtNrMaszyny & "', '" & Me!txtNazwa & "', '" & Me!txtZglaszajacy & "', '" & Me!txtData & "', '" & Me!txtData & "', '" & Me!txtGodzina & "', '" & Me!listPrzyczyna & "," & Me!txtNazwa & "," & Me!txtNrMaszyny & "," & Me!txtObszar & "', '" & Me!txtObszar & "', '" & Me!txtTel & "', '" & Me!txtKomentarz & "');"
strSQLSMSSend = "INSERT INTO dbSMSSend (Przyczyna, Telefon) VALUES ('" & Me!SMSSendRequest & "', '" & txtTel & "');"
DoCmd.SetWarnings False
DoCmd.RunSQL strSQL
DoCmd.RunSQL strSQLSMSSend
DoCmd.SetWarnings True
rsPhone.MoveNext
Loop
rsPhone.Close
Set rsPhone = Nothing
dbs.Close
Set dbs = Nothing
DoCmd.Close
' DoCmd.OpenReport "repAwariaOtwarta", acViewPreview, , "ID=" & DMax("ID", "dbAwarieOtwarte")
End If
End Sub
它在 dbZmiana 中为每个 phone 数字循环,所以我为每个提供的数字分离了 strSQL 插入。
一切顺利,但我遇到了一个问题。在每个循环中,我想将 "looped" phone 数字作为字符串插入到 strSQLSMSSend 中。 这个号码应该进入 Telefon,我不知道如何在每个循环中引用那个 rs 值。
现在有一个 '" & txtTel & "' 值,我该如何插入 rs 值来代替它?
怎么样:
strSQLSMSSend = "INSERT INTO dbSMSSend (Przyczyna, Telefon) VALUES ('" & Me!SMSSendRequest & "', '" & rsPhone!txtTel.Value & "');"