Falla en la conexión de excel bva con sybase

Estoy tratando de realizar una conexión entre excel vba y sybase que es una base de datos, sin embargo; al ejecutar el código para ver que se conecte me manda el error 3709 the connection cannot be used to perform this operation is either closed or invalid context.

El código es el siguiente:

Sub dos()
Set conn = New ADODB.Connection
Set rs = New ADODB.Recordset
conn.ConnectionString = "Driver={SQL Anywhere 17};Server=dggbi01-iq;Port=10000;Database=iqdm;Uid=l00404846;Pwd=wZkX#xCAs_u27V;"
rs.Open "select * from LGL_DM_MUDA_ALL_METRICS_SUM_F_V ", conn, adOpenStatic, adLockReadOnly, adCmdTable
With ThisWorkbook.Worksheets("test")
.Visible = True
.Range("a1:b1").Value = Array("PROJ_NUM", "PROJ_EN_NAME")
.Range("A2").CopyFromRecordset rs
.Activate
End With
rs.Close: Set rs = Nothing
conn.Close: Set conn = Nothing
End Sub

1 respuesta

Respuesta

Excel la importa sin necesidad de hacer un programa.

Gracias por tu respuesta, sin embargo son más de 30 millones de registros en la base de datos y cada vez que trato de importarla se rompe la conexión, me manda un mensaje de error que dice excel query out of memory. La idea es consultar uno a uno los contratos que desea el cliente para no llamar toda la base de datos. En si, la idea de conectar a través del odbc es para poder visualizar solo el numero de contrato que se requiere. De hecho pude hacer la importación con power query, pero no veo como acomodar tanta información en las celdas que corresponden.

¿Me puedes asesorar un poco más por favor?

Leer de la tabla que sea los números de contrato de un cliente y luego añadir un WHERE a la sentencia:
select * from LGL_DM_MUDA_ALL_METRICS_SUM_F_V WHERE CONTRATO=111 OR CONTRATO=222

Agradezco mucho tu respuesta, sin embargo; estas asumiendo que la base de datos ya se pudo conectar con excel y mi principal problema es que la cadena de conexión no responde y solo me envía un error que dice que no encuentra al provider en el error 3706 y en el error 3709 me dice que no es posible conectarse. No encuentro un driver que pueda utilizar para realizar la conexión o por lo menos que tenga compatibilidad, de hecho lo intente con SQL Anywhere 12 y 17, también utilice devart odbc pero en ninguno de los casos consigo que se comunique con la base de datos de sybase. El resto de las sentencias de código SQL ya serian sencillas si tuviera funcionando algún odbc o jdbc o algún conector.

Usa Power BI Desktop. Como es un programa nuevo, tiene todo actualizado y lee SYBASE

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas