IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Erreur automation avec connexion ODBC oracle


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mai 2008
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Mai 2008
    Messages : 240
    Par défaut Erreur automation avec connexion ODBC oracle
    Bonjour,

    J'essai d'interroger une base Oracle 10 depuis VBA en passant par un DSN. Le DSN est ok (en tout cas le test de connexion). Lorsque je lance mon code depuis vba j'ai le message :

    Erreur d'exécution '-2147217868 (80040e37)'
    Erreur Automation

    Et pouff tout tombe en marche.

    Le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    Sub initConnection()
        Dim cnx As New ADODB.Connection
        Dim rst As New ADODB.Recordset
        Dim query As String
     
        cnx.ConnectionString = "DSN=excel_hilairev5;UID=odbc;PWD=odbc;"
        cnx.Open
        Debug.Print "Connexion : " & cnx.State
     
        rst.CursorLocation = adUseClient
        query = "Select itmref_0 from itmmaster"
     
        Debug.Print "Requête : " & query
     
        rst.Open query, cnx
     
        If cnx.State = adStateOpen Then
            MsgBox rst.RecordCount
        Else
            MsgBox "Pas de connexion"
        End If
     
        rst.Close
        cnx.Close
        Set rst = Nothing
        Set cnx = Nothing
    End Sub
    Citation Envoyé par debug
    Connexion : 1
    Requête : Select itmref_0 from itmmaster
    Sur le net je trouve rien de bien clair sur l'erreur.
    Est-ce que vous avez une idée ?

  2. #2
    Membre éclairé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mai 2008
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Mai 2008
    Messages : 240
    Par défaut
    Personne n'a d'idée ?

  3. #3
    Invité
    Invité(e)
    Par défaut
    bonjour,
    voila ce que me dit Microsoft:
    Citation Envoyé par Microsoft
    Erreur d’exécution '-2147217865 (80040e37)' : [Microsoft] [pilote ODBC SQL Server] [SQL Server] nom d’objet non valide 'frl_acct_code'.
    on va pas lui en vouloir d’être égocentrique mais je pense que c'est valable pour Oracle!

    tu vois Oracle dans le gestionnaire ODBC?

    as tu le fichier d'autorisation oracle su ton disck dur?

    https://docs.oracle.com/cd/B28359_01...configodbc.htm

    notes que sur certaine machine il faut utiliser le driver Oracle G11 même pour la version 10!
    Dernière modification par Invité ; 09/05/2017 à 16h14.

  4. #4
    Membre éclairé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mai 2008
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Mai 2008
    Messages : 240
    Par défaut
    tu vois Oracle dans le gestionnaire ODBC?
    Oui et si je fais un test de connexion depuis le gestionnaire ODBC je n'ai pas de problème de connexion.

    En continuant mes recherches je suis tombé sur des problèmes entre le gestionnaire odbc 32bits, 64its. Mon Windows est en 64 mais mon pack office est en 32. Est-ce que la source du problème pourrait être là ?

    as tu le fichier d'autorisation oracle su ton disck dur?
    Si tu parle du tsname.ora, oui je l'ai bien. Sans lui le test de connexion odbc ne marcherait pas.

  5. #5
    Invité
    Invité(e)
    Par défaut
    les chose vont sens dire mais elles vont mieux en les disant!

    si je comprends bien, tu dispose d'un environnement Windows 64 bits avec un Excel 32 bits?

    j'ai bien peur que le problème provienne bien de la configuration Odbc!


    je te propose de tester l'un ou l'autre!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     'Case ODBC
            GenereCSTRING = "Provider=MSDASQL.1;Password=" & PassWord & ";Persist Security Info=True;User ID=" & User & ";Data Source=" & Base 'Base=DSN
       ' Case ORACLE
            GenereCSTRING = "Provider=OraOLEDB.Oracle.1;Password=" & PassWord & ";Persist Security Info=True;User ID=" & User & ";Data Source=" & Base

  6. #6
    Membre éclairé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mai 2008
    Messages
    240
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux

    Informations forums :
    Inscription : Mai 2008
    Messages : 240
    Par défaut
    Avec un poil de retard...

    J'ai modifié mon code avec le provider MSDASQL mais je tombe sur un autre message d'erreur... Enfin pas le même code qu'au début.

    ---------------------------
    Microsoft Visual Basic pour Applications
    ---------------------------
    Erreur d'exécution '-2147217908 (80040e0c)':

    Erreur Automation
    ---------------------------
    OK Aide
    ---------------------------
    Avec le provider OraOLEDB j'ai une erreur 3706 lorsque j'arrive à cnx.open. En fait même avec une connexion ADODB par le dsn j'obtient une erreur d'automation Je vais reprendre l'installation du pilote Oracle à 0.

Discussions similaires

  1. [ORACLE] Erreurs Compilation avec connexion BDD
    Par oliviernouhi dans le forum SGBD
    Réponses: 8
    Dernier message: 02/02/2011, 10h54
  2. [ODBC] Problème exécution requête avec connexion ODBC/PHP
    Par nicaud dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 20/04/2008, 13h20
  3. Problème de connexion ODBC Oracle
    Par Nary dans le forum Connexions aux bases de données
    Réponses: 0
    Dernier message: 30/01/2008, 15h20
  4. Erreur de connexion ODBC Oracle
    Par Abargadon dans le forum Administration
    Réponses: 1
    Dernier message: 30/04/2007, 09h40
  5. ERREUR UPDATE Avec java et oracle
    Par gloglo dans le forum JDBC
    Réponses: 7
    Dernier message: 20/10/2006, 09h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo