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 Execution 52 [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre éclairé
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Mars 2011
    Messages
    316
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Contrôleur de Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2011
    Messages : 316
    Par défaut Erreur Execution 52
    Bonjour,

    J'essaye de commencer à écrire un code qui me permettra de récupérer la ou les valeurs d'un champ d'une table ou d'une requête et de l'inscrire dans une cellule Excel.

    Pour commencer ce code, j'ai eu recours au code de de Charles A. dont en voici l'extrait que j'ai adapté à mon besoin :

    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
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    Public cnx As ADODB.Connection
     
    Sub auto_open()
        ' La sub auto_open possède la propriété d'être automatiquement
        '  exécutée à l'ouverture du classeur Excel
        '  à l'identique : auto_close est exécutée sur la fermeture
        Dim strPath As String
     
        ' Seule contrainte une cellule nommée strPath
        '  doit être présente dans le classeur et
        '  renvoyer sur le chemin de l'appli
        '  en l'occurence
        Application.Goto Reference:="StrPath"
     
        strPath = ActiveCell
     
        ' Nous testons si le fichier est accessible
        If Len(Dir(strPath)) > 0 Then
            ' Déclaration de la variable de connexion
            Set cnx = New ADODB.Connection
     
            ' Connexion à la base
            ConnectDB cnx, strPath
        Else
            MsgBox "La base n'a pas pu être trouvée" & vbCrLf & _
                    strPath & vbCrLf & _
                    "n'est pas un chemin valide.", vbCritical + vbOKOnly
        End If
     
    End Sub
     
    Sub ConnectDB(ByRef cnx As ADODB.Connection, ByVal strPath As String)
     
        'Définition du pilote de connexion
        cnx.Provider = "Microsoft.ACE.OLEDB.12.0"
        'Définition de la chaîne de connexion
        cnx.ConnectionString = strPath
        'Ouverture de la base de données
        cnx.Open
     
    End Sub
    La variable StrPath se situe en cellule A120 et a pour valeur : "D:\Users\adauchet\Documents\00 - Réel\2016\2016.accdb"

    A l'exécution du code, j'ai l'erreur exécution 52 qui se manifeste

    Pour vérifier que j'ai bien libellé le chemin j'ai eu recours au code suivant :
    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
    Sub TesteSiFichierExiste()
     
    Dim MonFichier As String
     
    MonFichier = "D:\Users\adauchet\Documents\00 - Réel\2016\2016.accdb"
     
        If FichierExiste(MonFichier) = True Then
            MsgBox "Le fichier existe..."
        Else
            MsgBox "Le fichier n'existe pas..."
        End If
     
    End Sub
     
     
    Public Function FichierExiste(MonFichier As String)
     
       If Len(Dir(MonFichier)) > 0 Then
          FichierExiste = True
       Else
          FichierExiste = False
       End If
    End Function
    J'ai copié collé la valeur de la cellule A120 dans le code ci dessous et le boléan a renvoyé vrai.

    Du coup je suis bloqué dans la construction et la continuation de mon code

    Merci de votre aide

  2. #2
    Membre éclairé
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Mars 2011
    Messages
    316
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Contrôleur de Gestion
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2011
    Messages : 316
    Par défaut
    J'ai trouvé

    J'avais mis des guillemets pour déclarer le chemin en cellule A120
    Je les ai enlevé, et il reconnait bien

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [VB6-MSADO 2.5 - Oracle 9.2] Erreur Execution 80004005
    Par GyLes dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 27/02/2006, 18h10
  2. [VBA] Aide Erreur execution !!
    Par Virgile59 dans le forum VBA Access
    Réponses: 2
    Dernier message: 10/02/2006, 12h01
  3. [PHP MySQL] Erreur execution requête de type INSERT
    Par Pfeffer dans le forum Requêtes
    Réponses: 6
    Dernier message: 23/01/2006, 17h38
  4. Réponses: 18
    Dernier message: 10/12/2005, 01h19
  5. [Ant]Erreur execution d'une tache ANT
    Par gerin dans le forum Eclipse Java
    Réponses: 1
    Dernier message: 11/05/2004, 16h59

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