Cambio de origen de datos ODBC

20/10/2003 - 18:36 por News | Informe spam
Hola a todos, tengo una gran cantidad de ficheros de Excel que acceden a una
base de datos Informix a través de ODBC.
Recientemente hemos cambiado el servidor y el software ODBC (IBM Informix
Connect).

Ahroa cuando intento actualizar las hojas de cálculo me muestra el siguiente
mensaje:

[Microsoft][Administrador de controladores ODBC] No se encuentra el nombre
del origen de datos y no se especificó ningún controlador predeterminado.


En el sistema está perfectamente configurado el origen de datos, con el
mismo nombre que tenía. De hecho si creo un nuevo fichero puedo acceder a
los datos creando nuevas consultas, pero las que ya están hechas no puedo
abrirlas.

Alguien sabe como solucionar este problema... existe uno y es volver a crear
todos los archivos nuevos, pero... jejeje, son unos cuantos.

Muchas gracias.

Preguntas similare

Leer las respuestas

#1 Fernando Arroyo
21/10/2003 - 09:51 | Informe spam
Quizás la cadena de conexión de las consultas anteriores esté mal. Puedes averiguar dicha cadena tanto de una consulta anterior como de una nueva, y compararlas. El código podría ser:

Sub MostrarConexión()
Dim qt As QueryTable
Set qt = ActiveSheet.QueryTables(1)
MsgBox qt.Connection
Set qt = Nothing
End Sub

Si hubiera alguna diferencia, sería posible cambiar la cadena de conexión de las consultas anteriores mediante algo como:

Sub ModificarConexión()
Dim qt As QueryTable
Set qt = ActiveSheet.QueryTables(1)
qt.Connection = "Nueva cadena de conexión"
Set qt = Nothing
End Sub

aunque si estuviéramos hablando de muchas consultas en muchas hojas y libros, sería mejor escribir algún código que los recorriera todos e hiciera las modificaciones en una sola vez.
Un saludo.


Fernando Arroyo
MS MVP - Excel


"News" escribió en el mensaje news:
Hola a todos, tengo una gran cantidad de ficheros de Excel que acceden a una
base de datos Informix a través de ODBC.
Recientemente hemos cambiado el servidor y el software ODBC (IBM Informix
Connect).

Ahroa cuando intento actualizar las hojas de cálculo me muestra el siguiente
mensaje:

[Microsoft][Administrador de controladores ODBC] No se encuentra el nombre
del origen de datos y no se especificó ningún controlador predeterminado.


En el sistema está perfectamente configurado el origen de datos, con el
mismo nombre que tenía. De hecho si creo un nuevo fichero puedo acceder a
los datos creando nuevas consultas, pero las que ya están hechas no puedo
abrirlas.

Alguien sabe como solucionar este problema... existe uno y es volver a crear
todos los archivos nuevos, pero... jejeje, son unos cuantos.

Muchas gracias.


Respuesta Responder a este mensaje
#2 Roberto Hernandez
21/10/2003 - 10:09 | Informe spam
Muchas gracias, pero ¿cómo puedo ver ésta cadena en el fichero de excel?


"Fernando Arroyo" escribió en el mensaje
news:
Quizás la cadena de conexión de las consultas anteriores esté mal. Puedes
averiguar dicha cadena tanto de una consulta anterior como de una nueva, y
compararlas. El código podría ser:

Sub MostrarConexión()
Dim qt As QueryTable
Set qt = ActiveSheet.QueryTables(1)
MsgBox qt.Connection
Set qt = Nothing
End Sub

Si hubiera alguna diferencia, sería posible cambiar la cadena de conexión de
las consultas anteriores mediante algo como:

Sub ModificarConexión()
Dim qt As QueryTable
Set qt = ActiveSheet.QueryTables(1)
qt.Connection = "Nueva cadena de conexión"
Set qt = Nothing
End Sub

aunque si estuviéramos hablando de muchas consultas en muchas hojas y
libros, sería mejor escribir algún código que los recorriera todos e hiciera
las modificaciones en una sola vez.
Un saludo.


Fernando Arroyo
MS MVP - Excel


"News" escribió en el mensaje
news:
Hola a todos, tengo una gran cantidad de ficheros de Excel que acceden a


una
base de datos Informix a través de ODBC.
Recientemente hemos cambiado el servidor y el software ODBC (IBM Informix
Connect).

Ahroa cuando intento actualizar las hojas de cálculo me muestra el


siguiente
mensaje:

[Microsoft][Administrador de controladores ODBC] No se encuentra el nombre
del origen de datos y no se especificó ningún controlador predeterminado.


En el sistema está perfectamente configurado el origen de datos, con el
mismo nombre que tenía. De hecho si creo un nuevo fichero puedo acceder a
los datos creando nuevas consultas, pero las que ya están hechas no puedo
abrirlas.

Alguien sabe como solucionar este problema... existe uno y es volver a


crear
todos los archivos nuevos, pero... jejeje, son unos cuantos.

Muchas gracias.


Respuesta Responder a este mensaje
#3 Fernando Arroyo
21/10/2003 - 10:26 | Informe spam
- Abre un libro que tenga al menos una consulta
- sitúate en una hoja que tenga consulta
- pulsa Alt + F11. Entrarás en el editor de VBA (Visual Basic para Aplicaciones)
- haz Insertar->Módulo
- pega esto en la ventana de código (la mas grande, normalmente a la derecha):

Sub MostrarConexión()
Dim qt As QueryTable
Set qt = ActiveSheet.QueryTables(1)
MsgBox qt.Connection
Set qt = Nothing
End Sub

- pulsa F5

El código debería ejecutarse. Aparecerá un mensaje con la cadena de conexión de la consulta de la hoja (o de la consulta 1 si hubiera más de una).
Te aconsejo que una vez obtenida la cadena de conexión salgas del libro _sin_ guardar los cambios, porque en caso contrario el libro se quedaría con un código que no va a servir para nada.
Un saludo.


Fernando Arroyo
MS MVP - Excel



"Roberto Hernandez" escribió en el mensaje news:
Muchas gracias, pero ¿cómo puedo ver ésta cadena en el fichero de excel?


Respuesta Responder a este mensaje
#4 Roberto Hernandez
21/10/2003 - 11:31 | Informe spam
Muchas gracias, ya he podido corregir algunos archivos.
El tema es que en algunos casos, dentro de la misma hoja tengo varias
consultas, unas al principio de la hoja y otras un poco más abajo.
El código que me envías parece que solo corrije la del principio de la hoja.

Lo cierto es que no conozco el VBA para poder hacer que recorra todo el
libro. Gracias, muchas gracias.


"Fernando Arroyo" escribió en el mensaje
news:
- Abre un libro que tenga al menos una consulta
- sitúate en una hoja que tenga consulta
- pulsa Alt + F11. Entrarás en el editor de VBA (Visual Basic para
Aplicaciones)
- haz Insertar->Módulo
- pega esto en la ventana de código (la mas grande, normalmente a la
derecha):

Sub MostrarConexión()
Dim qt As QueryTable
Set qt = ActiveSheet.QueryTables(1)
MsgBox qt.Connection
Set qt = Nothing
End Sub

- pulsa F5

El código debería ejecutarse. Aparecerá un mensaje con la cadena de conexión
de la consulta de la hoja (o de la consulta 1 si hubiera más de una).
Te aconsejo que una vez obtenida la cadena de conexión salgas del libro
_sin_ guardar los cambios, porque en caso contrario el libro se quedaría con
un código que no va a servir para nada.
Un saludo.


Fernando Arroyo
MS MVP - Excel



"Roberto Hernandez" escribió en el mensaje
news:
Muchas gracias, pero ¿cómo puedo ver ésta cadena en el fichero de excel?


Respuesta Responder a este mensaje
#5 Fernando Arroyo
21/10/2003 - 12:14 | Informe spam
El código de mi anterior mensaje corrige sólo la consulta cuyo item es el 1 de la hoja. Si tienes que cambiar todas las cadenas de conexión de todas las consultas del libro, puedes usar el siguiente:

Sub CambiarCadenasDeConexión()
Dim wks As Worksheet, qt As QueryTable

For Each wks In ThisWorkbook.Worksheets
For Each qt In wks.QueryTables
qt.Connection = "Nueva cadena de conexión"
Next qt
Next wks

Set wks = Nothing
Set qt = Nothing
End Sub

Tendrías que ponerlo en el libro (o los libros) cuyas consultas tengas que cambiar. Una vez hecho el cambio, lo mejor es que lo quites.
Un saludo.


Fernando Arroyo
MS MVP - Excel

"Roberto Hernandez" escribió en el mensaje news:%
Muchas gracias, ya he podido corregir algunos archivos.
El tema es que en algunos casos, dentro de la misma hoja tengo varias
consultas, unas al principio de la hoja y otras un poco más abajo.
El código que me envías parece que solo corrije la del principio de la hoja.

Lo cierto es que no conozco el VBA para poder hacer que recorra todo el
libro. Gracias, muchas gracias.


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida