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 :

Gestion du mot de passe de requete ODBC


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 4
    Points : 3
    Points
    3
    Par défaut Gestion du mot de passe de requete ODBC
    Bonjour,

    J'utilise Excel pour mettre en forme des données issues d'une base SQL Server. Pour extraire les données de la base :
    1) Je créé une vue dans la base de données
    2) Dans Excel, je crée une source de donnée qui pointe sur la base en prenant soin de cocher "Enregistrer l'idendité et le mot de passe de l'utilisateur"
    3) Dans une feuille Excel, j'utilise "Données/Données externe/créer une requete" qui m'ouvre l'assistant requete, je sélectionne la source créée et je peux ensuite selectionner les colonnes que je veux importer dans Excel.

    Jusqu'alors (en Excel 2000)le fichier Excel devenait "autoporteur", il pouvait être utilisé sur n'importe quel PC sans avoir à connaître et encore moins saisir le mot de passe.
    La seule ligne de VB permettant de mettre à jour un onglet comportant une requete d'extraction de données est la suivante :
    ' Extraction
    Selection.QueryTable.Refresh BackgroundQuery:=False

    Le problème c'est que depuis que je suis passé à Excel 2k3, lorsque les utilisateur executent ce code,
    Excel 2k3 sort en erreur "Echec de l'autorisation".
    Si je fais un "Actualiser les données" manuel, dans la feuille concernée, Excel me demande le mot de passe, du
    moins la première fois, mais si je ferme et que je réouvre le classeur il le redemande.

    Est-ce que quelqu'un pourrait m'aider à retrouver un fonctionnement identique à celui d'Excel 2000, sans demande de mot de passe.

    Merci par avance pour toute aide.

  2. #2
    Membre à l'essai
    Inscrit en
    Novembre 2007
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 22
    Points : 10
    Points
    10
    Par défaut
    Salut,

    J'ai exactement le même problème. Excel 2003 ne veut rien savoir de m'authentifier sans que je rentre un mdp.

    J'ai essayé avec DAO, mais j'ai des erreurs.

    Je suis en attente d'une réponse...

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 4
    Points : 3
    Points
    3
    Par défaut Une solution
    Voilà ce que je fais :

    je charge en VB, la string de connexion avant de rafraichir l'onglet, les données de connexion sont dans une feuille du classeur qui peut être protégée si nécessaire.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    'Preparation de la string de connection "connect"
        server = Range("Base").Cells(2, 2)
        base = Range("Base").Cells(3, 2)
        login = Range("Base").Cells(4, 2)
        password = Range("Base").Cells(5, 2)
        connect = "ODBC;DRIVER=SQL Server;SERVER=" & server & _
                    ";UID=" & login & _
                    ";PWD=" & password & _
                    ";APP=Microsoft® Query;;DATABASE=" & base
        Worksheets("Brut").QueryTables(1).Connection = connect
     
        ' Refresh
        Selection.QueryTable.Refresh BackgroundQuery:=False

  4. #4
    Candidat au Club
    Profil pro
    Inscrit en
    Août 2007
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 4
    Points : 3
    Points
    3
    Par défaut LA solution
    La solution est très simple, il suffit de cocher la case «
    enregistrer le mot de passe » dans les propriétés de la plage de données
    externes.

  5. #5
    Membre à l'essai
    Inscrit en
    Novembre 2007
    Messages
    22
    Détails du profil
    Informations forums :
    Inscription : Novembre 2007
    Messages : 22
    Points : 10
    Points
    10
    Par défaut
    Si seulement c'était si simple...

    La case est cochée de mon côté, mais ça me demande toujours un mot de passe!

    Begsym, j'ai essayé ton code, mais ça me donne une erreur de compilation sur le "Range"...

    Je recherche toujours...

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

Discussions similaires

  1. mot de passe caché requete odbc
    Par gg2vig dans le forum Excel
    Réponses: 1
    Dernier message: 01/08/2007, 17h36
  2. Gestion de mot de passe
    Par cyril.ppn dans le forum C++Builder
    Réponses: 7
    Dernier message: 14/02/2007, 12h06
  3. gestion des mot de passe avec Access
    Par cyberbiker dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 07/09/2006, 15h42
  4. [LG] Gestion de mot de passe
    Par kakaroto dans le forum Langage
    Réponses: 3
    Dernier message: 02/08/2005, 09h13
  5. Génération aléatoire et gestion de mots de passe
    Par thomine dans le forum Sécurité
    Réponses: 5
    Dernier message: 23/03/2005, 16h58

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