Я схожу с ума по этой проблеме. У меня есть форма, которая заполнена переменным количеством строк данных, и в каждой строке есть флажок в конце.Затем пользователь переходит вниз по форме, ставит галочки рядом с каждой строкой, для которой он хочет продолжить запись вырезанной карты, и нажимает кнопку команды.Я получаю только одну строку для вставки и рисую пробел о том, как заставить ее вставить все проверенные строки.Вот мой код:
Public Sub bttnCutCard_Click()
Dim sqlTmp As String
Dim tmpReq As Variant
Dim tmpHnb As Variant
Dim tmpLt As Variant
Dim tmpSA As Variant
Dim tmpCou As Variant
Dim tmpcc As Variant
Dim rs As DAO.Recordset
Dim SQLCut As String
Dim tmprq As Variant
Dim tmplot As Variant
tmpcc = Me.Cutcard
tmpReq = Me.ServiceReq
tmpHnb = Me.HouseNumber
tmpLt = Me.LotNumb
tmpSA = Me.StreetName
tmpCou = Me.County
If tmpcc = -1 Then
sqlTmp = "Insert into tmpdevcc (Requestnbr, HouseNmb, LTNBR, ServiceAddress, County) Values ( " & tmpReq & " ,'" & tmpHnb & "', '" & tmpLt & "', '" & tmpSA & "', '" & tmpCou & "')"
DoCmd.RunCommand acCmdSaveRecord
DoCmd.RunSQL sqlTmp
Set rs = DBEngine(0)(0).OpenRecordset("tmpdevcc")
Do While Not rs.EOF
rs.MoveFirst
SQLCut = "INSERT INTO tblCCnew ([Requestnbr], HouseNmb, LTNBR, ServiceAddress, County) Values('" & tmpReq & "', '" & tmpHnb & "', '" & tmpLt & "', '" & tmpSA & "', '" & tmpCou & "')"
DoCmd.RunSQL SQLCut
tmprq = DLookup("[Requestnbr]", "tmpdevcc", tmpcc = -1)
tmpLt = DLookup("LTNBR", "tmpdevcc", tmpcc = -1)
DoCmd.OpenForm "Cutcardenter", , , "[tblCCnew].[RequestNbr] =" & tmprq & " And [tblCCnew].[LTNBR] =" & tmpLt
rs.MoveNext
Loop
rs.Close
Exit Sub
Else
MsgBox "No Cut cards check off"
End If
Exit Sub
Любой может мне помочь или дать мне совет, как сделать это более эффективно, что было бы здорово.