Companheiros estou com o mesmo problema, porém ocorre o erro executando por formulário ou direto na planilha.
A rotina que peguei foi de um programinha que peguei na internet e estou usando ela para desenvolver meu projeto, coloco abaixo e estou mostrando em qual linha ocorre o ERRO 400.
Public Sub caminhaoOcup()
j = 2
K = 5
Dim caminhao, motora, fone, codOcup
Dim DB As Database
Dim rs As Recordset
Dim Rs1 As Recordset
Dim Rs2 As Recordset
Dim Rs3 As Recordset
Set DB = OpenDatabase(ThisWorkbook.Path & "transporte.mdb")
Me.Range("AO6:AQ3000").ClearContents
Set rs = DB.OpenRecordset("SELECT * FROM [CAMINHAO]")
Do Until rs.EOF
'Me.Hide
Set Rs1 = DB.OpenRecordset("SELECT * FROM [KM] WHERE CAMINHAO=" & rs("COD")) '& Range("D7") & "", dbOpenSnapshot)
If Rs1.RecordCount > 0 Then
K = K + 1
Rs1.MoveLast
'Set Rs2 = DB.OpenRecordset("SELECT * FROM [CAMINHAO$] WHERE COD=" & Rs1("CAMINHAO") & "")
Set Rs3 = DB.OpenRecordset("SELECT * FROM [MOTORISTA] WHERE COD=" & Rs1("MOTORISTA"))
Me.Cells(K, 41) = rs("PLACA") & " - " & rs("MODELO")
Me.Cells(K, 42) = Rs3("NOME") ' *********************** ( o erro ocorre nesta linha) ***********************
Me.Cells(K, 43) = Rs3("FONE")
End If
rs.MoveNext
Loop
Me.Range("AO4") = K - 5
DB.Close
End Sub
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Postado : 07/05/2014 7:33 pm