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 :

Exécuter une requête sur un fichier excel placé dans une GED sharepoint [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre du Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2015
    Messages : 8
    Par défaut Exécuter une requête sur un fichier excel placé dans une GED sharepoint
    Bonjour à tous,

    J'ai créé une petite application en VBA sous Excel 2010 pour traiter des demandes. Tout fonctionne bien quand le fichier Excel se trouve sur mon disque dur.
    Par contre, je l'ai déposé sur notre GED Sharepoint et là ça dysfonctionne complètement.

    Petite explication, j'exécute une requête SQL et je récupère les infos que je mets dans une feuille "Resultats". J'ai créé une plage nommée "SELECTION" qui correspond au contenu de la feuille "Resultats". Ensuite, je fais une requête pour rechercher un matricule dans cette "SELECTION".

    Voici le code qui fonctionne sur mon poste (hors GED) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Application.ScreenUpdating = False
    Dim rs As ADODB.Recordset
    Set Cnx = New ADODB.Connection
    req = "select * from SELECTION where id = '" + Matricule+ "'"
    With Cnx
                .ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & ActiveWorkbook.FullName & ";Extended Properties=""Excel 8.0;HDR=YES;"""
    End With
    Cnx.Open
    If Cnx.State = adStateOpen Then
                Set rs = Cnx.Execute(req)
    End If
    Voici le code que j'ai modifié une fois le fichier sur la GED :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Application.ScreenUpdating = False
    Dim rs As ADODB.Recordset
    Set Cnx = New ADODB.Connection
    req = "select * from SELECTION where id = '" + Matricule+ "'"
    With Cnx
                .ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;WSS;IMEX=2;RetrieveIds=Yes;DATABASE=\\cheminGED\Fichier.xlsm;LIST={8C989D07-6C93-4443-A076-C82F49212595};Extended Properties=""Excel 12.0;HDR=YES;"""
    End With
    Cnx.Open
    If Cnx.State = adStateOpen Then
                Set rs = Cnx.Execute(req)
    End If
    La connexion se passe bien mais j'ai une erreur sur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set rs = Cnx.Execute(req)
    Nom : 2015-04-23_09h14_45.jpg
Affichages : 761
Taille : 29,3 Ko

    Quelqu'un aurait-il une idée sur le sujet ? Car là après deux jours de recherche, je commence à désespérer ...

    Merci d'avance de votre aide.

  2. #2
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    es-tu sûr du chemin d'accès dans SharePoint ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    \\cheminGED\Fichier.xlsm

    quand je manipule des fichiers qui sont sur SharePoint, j'ai une addresse en http://
    pour récupérer facilement le chemin, je fais parfois un clic droit et je regarde le chemin dans les propriétés (je fais un vulgaire copier coller)

  3. #3
    Membre du Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2015
    Messages : 8
    Par défaut
    J'ai fais des essais avec le chemin http:// et la connexion ne fonctionnait pas donc j'ai modifié le chemin en \\chemin... comme ce que l'on utilise quand on créer un lecteur réseau pour y accéder. Et là la connexion passe correctement.

  4. #4
    Expert confirmé

    Homme Profil pro
    Curieux
    Inscrit en
    Juillet 2012
    Messages
    5 169
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2012
    Messages : 5 169
    Billets dans le blog
    5
    Par défaut
    essaye dans ta requête d'encadrer ta plage nommée

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    req = "select * from [SELECTION] where id = '" + Matricule+ "'"

  5. #5
    Membre du Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2015
    Messages : 8
    Par défaut
    J'ai toujours la même erreur ...
    J'ai déjà essayé :
    [SELECTION]
    [SELECTION $]
    [SELECTION$]
    `SELECTION`
    `SELECTION $`
    `SELECTION$`

    Par contre en mettant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    req = "select * from Resultats!$A:$AL where id = '" + Matricule+ "'"
    Je n'ai plus la même erreur :

    Nom : 2015-04-23_10h05_16.jpg
Affichages : 691
Taille : 17,9 Ko

  6. #6
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    hormis ce que t'a dit Joe!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     req = "select * from [Resultats$!SELECTION] where id = '" + Matricule+ "'"
    rs.open  req, Cnx

  7. #7
    Membre du Club
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mars 2015
    Messages : 8
    Par défaut
    Bonjour,

    merci de ton aide mais cela ne fonctionne pas non plus ...

    avec [Resultats$!SELECTION] j'ai toujours le message d'erreur concernant le moteur de base de données ...

    et avec Resultats$!SELECTION j'ai le message La méthode 'Open' de l'objet '_Recordset' a échoué

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

Discussions similaires

  1. Réponses: 6
    Dernier message: 02/08/2017, 16h55
  2. Réponses: 1
    Dernier message: 11/02/2011, 14h14
  3. [XL-2003] Exécuter une macro sur 2 fichiers excel en même temps..
    Par visto94 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 28/07/2010, 14h09
  4. Creer un macro qui verifie une info sur plusieur fichier excel
    Par Esmax666 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 08/07/2009, 16h42
  5. Réponses: 4
    Dernier message: 02/05/2005, 20h25

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