Voy a intentar resumir lo que me pasa ahora, o lo que creo que me pasa a ver si encontramos alguna solución.
Mi codigo ahora mismo es:
Private Sub Emitir_Pedido_Click()
Dim rst1 As DAO.Recordset, _
rst2 As DAO.Recordset, _
strSQL1 As String, _
strSQL2 As String, _
Porte As String, _
Fecha As String, _
Prove As String, _
Pedido As String, _
Factur As String, _
Plazo As String, _
Lugar As String, _
Forma As String, _
Observa As String, _
Proye As String, _
strLibro As String, _
Fila As Long, _
xls As Object ' Excel.Application
strSQL1 = "SELECT Nombre_Proveedor, Telefono, Persona_de_Contacto, E-mail " _
& "FROM Proveedor" _
& "WHERE ID_Proveedor = Prove"
' abro el recordset
Set rst1 = CurrentDb.OpenRecordset(strSQL1, dbOpenDynaset)
xls.ActiveSheet.Cells(14, 3) = rst1!Proveedor
xls.ActiveSheet.Cells(14, 6) = rst1!Telefono
xls.ActiveSheet.Cells(15, 3) = rst1!Persona_de_contacto
xls.ActiveSheet.Cells(15, 6) = rst1!E - mail
No consigo que funcione, puede que sea la sintaxis pero no estoy seguro, voy a ver si explicando lo que hago, alguien consigue averiguar lo que está mal.
En la variable string Prove guardo un dato numérico ID Proveedor del formulario, y esa varible Prove es la que quiero usar como condición para la busqueda en la tabla Proveedor de los siguientes datos: Nombre Proveedor, Telefono, Persona Contacto y E-mail.
Luego, esos datos los guardo en una tabla excell que ya tengo abierta pero eso funciona, lo que no consigo hacer bien es la consulta.
No sé, el error que me da es algo así como que faltan parametros en la siguiente expresión:
Set rst1 = CurrentDb.OpenRecordset(strSQL1, dbOpenDynaset)
pero yo veo que todo el mundo usa asi esa expresión y le funciona.
Un saludo y gracias