Select Db Sql e Insertar tabla Access

Y pido de su ayuda por favor.

Estoy realizando en un form de Access una consulta VBA a una tabla en SQL Server, y dicho resultado lo quiero ingresar en una tabla Access que es donde estoy trabajando localmente.

El codigo es el siguiente:

Dim cn As Object
Dim rst As Object
Dim sql As String
Dim nRegistros, y As Long
Set cn = CreateObject("ADODB.Connection")
Set rst = CreateObject("ADODB.Recordset")
'-- Conexion con el Servidor
cn.Open "Driver={SQL Server};" & _
           "Server=XXXX;" & _
           "Database=XXXX;" & _
           "Uid=XXXX;" & _
           "Pwd=XXXX"
SQl= "Select...."
With rst
    .CursorType = adOpenKeyset
    .Open sql, cn, , , adCmdText
End With
Let nRegistros = rst.RecordCount
rst.MoveFirst
DoCmd.SetWarnings False
For y = 1 To nRegistros
DoCmd.RunSQL "INSERT INTO " & _
"Gateway (Id_Cliente) " & _
"VALUES('" & rst.Fields(Id).Value & "')"
rst.MoveNext
Next y
cn.Close
Set rst = Nothing: Set cn = Nothing
DoCmd. SetWarnings True

El problema es que en la variable nRegistros me trae un -1, y por lo mismo no entra en el For; he probado la consulta directamente en la DB y no me da problema alguna.

Me ayudan

Respuesta
1

[Hola

¿Eso te ocurre en un Access de 64 bits? Ojo, Access, o sea el Office, no estoy preguntando por los bits del Windows.

Abraham Valencia

1 respuesta más de otro experto

Respuesta
2

Carlos: Prueba simplemente con >>

nRegistros = Rst.RecordCount sin el Let

Un saludo >> Jacinto

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas