Hola expertos necesito exportar los resultados de una consulta sql a excel
Hola,
El problema es el siguiente: Necesito exportar los resultados que me arroja una consulta sql a excel, para lo que he intentado el siguiente método:
Function TransferToEcxel()
On Error GoTo Err_TransferToExcel
Dim db1 As Database
Dim qdf As QueryDef
Dim st1 As String, st2 As String
sq1 = "SELECT * FROM tbl_pedidos_rs" st1 = "Exportar_Pedidos"
st2 = wrut & "Pedidos.xls"
Set db1 = CurrentDb
Set qdf = db1.CreateQueryDef(st1, sq1)
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12, st1, st2, True DoCmd.DeleteObject acQuery, st1 Exit_TransferToExcel:
Exit Function Err_TransferToExcel:
Debug.Print Err.Description Resume
Exit_TransferToExcel
End Function
Este funciona muy bien si la tabla esta ubicada en el mismo proyecto, el problema radica en que la tabla "tbl_pedidos_rs" no esta ubicada físicamente en la base cliente sino en una base servidor, también es .mdb, intente con una conexión a la base de datos servidor y crear un recordset hacer lo siguiente:
Function TransferToEcxel()
On Error GoTo Err_TransferToExcel
Dim cn1 As ADODB.Connection
Dim rs1 As ADODB.Recordset
Dim qdf As QueryDef
Dim st1 As String, st2 As String
Set cn1 = New ADODB.Connection
cn1.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & wrut & "Data_adm.mdb;"
sq1 = "SELECT * FROM tbl_pedidos_rs"
Set rs1 = New ADODB.Recordset rs1.
Open sq1, cn1, adOpenKeyset, adLockOptimistic
st1 = "Exportar_Pedidos"
st2 = "Pedidos.xls"
Set qdf = cn1.CreateQueryDef(st1, rs1)
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel12, st1, st2, True DoCmd.DeleteObject acQuery, st1
Exit_TransferToExcel:
Exit Function
Err_TransferToExcel:
Debug.Print Err.Description
Resume Exit_TransferToExcel
End Function
Pero tampoco funciona, que puedo hacer ala respecto
Muchas gracias por su atención y de antemano por su colaboración
Cordialmente,
Andr3wC