Bebabeloola
XLDnaute Nouveau
Bonjour.
J'utilise une macro sous Excel qui créée une requête Firebird (similaire à SQL) pour rechercher des produits dans une base de données selon plusieurs critères. En gros, les critères de la requetes sont générés en fonction des champs saisis sur Excel. La requete est assez lourde et possède des jointures de tables et de nombreux critères.
J'utilise la connexion suivante:
On m'a remonté une erreur ce matin qui faisait planter VBA lors du lancement de la requete. Le message d'erreur était le suivant:
Pour trouver la cause du problème, j'ai directement créé sous Excel une connexion à la source de données et copié le texte de ma requete. Cette fois-ci, le message d'erreur était bien plus explicite:
Ma question est la suivante: comment récupérer ce message d'erreur sous VBA ?
Merci
J'utilise une macro sous Excel qui créée une requête Firebird (similaire à SQL) pour rechercher des produits dans une base de données selon plusieurs critères. En gros, les critères de la requetes sont générés en fonction des champs saisis sur Excel. La requete est assez lourde et possède des jointures de tables et de nombreux critères.
J'utilise la connexion suivante:
Dim cnnADO As New ADODB.Connection
Dim rc As New ADODB.Recordset
cnnADO.ConnectionString = "ODBC;DSN........"
If Not (cnnADO.State) Then cnnADO.Open
rc.Open ("SELECT ............."), cnnADO, adOpenDynamic, adLockOptimistic
On m'a remonté une erreur ce matin qui faisait planter VBA lors du lancement de la requete. Le message d'erreur était le suivant:
Plutôt prise de tête car selon les critères utilisés (client, dimensions), la requete plantait ou pas.Ce pilote ODBC ne prend pas en charge les propriétés demandées..
Pour trouver la cause du problème, j'ai directement créé sous Excel une connexion à la source de données et copié le texte de ma requete. Cette fois-ci, le message d'erreur était bien plus explicite:
Ca m'a permis d'identifier rapidement l'origine du problème : un point en trop à la fin du champ[ODBC Firebird Driver][Firebird]conversion error from string "0219.1. "
Ma question est la suivante: comment récupérer ce message d'erreur sous VBA ?
Merci