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 :

[VBA-E] Récupérer le chemin d'un répertoire


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Inscrit en
    Juillet 2007
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 6
    Points : 6
    Points
    6
    Par défaut [VBA-E] Récupérer le chemin d'un répertoire
    Salut à tous!

    Tout d'abord, félicitations pour ce forum, il m'a vraiment aidé à trouver tout plein d'infos utiles!!

    Par contre, j'ai un petit problème et là, je cale.
    J'utilise une version Excel 2003 avec l'éditeur VBA qui va avec.

    J'ai crée un modèle de document Excel avec une macro. Cette macro va chercher des information dans un autre tableau, les copie dans le modèle et sauvegarde le modèle sous un autre nom dans un autre dossier.
    J'ai donc crée un UserForm avec différentes zones de saisie de texte:
    - une pour sélectionner le chemin du tableau source (j'y arrive sans problème)
    - une pour sélectionner le répertoire de sauvegarde: c'est là qu'est mon problème, je n'arrive pas à trouver la fonction qui m'ouvre une fenetre dans lequelle je peux simplement sélectionner un nom de répertoire.

    Alors forcément, je pourrai utiliser une fonction GetOpenFile et enlever le nom du fichier sélectionné, mais c'est pas très élégant et il faut qu'un fichier soit dans le dossier pour que ca marche. Est ce que quelqu'un a une idée pour me faire avancer? Merci d'avance!!!

  2. #2
    Expert éminent Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Points : 9 402
    Points
    9 402
    Par défaut
    Tu peux utiliser l'objet Microsoft Common Dialog qui te permet de créer des boites de recherches de fichier personnalisable.
    Clic droit sur la boite a outils / Contrôles Supplémentaires

  3. #3
    Futur Membre du Club
    Inscrit en
    Juillet 2007
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 6
    Points : 6
    Points
    6
    Par défaut
    merci pour ta réponse Jérome! J'avais pas pensé à ca, mais j'ai essayé par le passé le Common Dialog et j'ai un problème de compatibilité que (j'avoue...) je n'ai pas vraiment chercher à régler. Du coup, je crois qu'il va falloir que je me plonge vraiment dedans.... :o(
    Si quelqu'un connait une autre solution qui pourrait aussi marcher, je suis toujours partant (promis, je regarde ce truc sur la compatibilité!)

  4. #4
    Membre habitué
    Inscrit en
    Janvier 2007
    Messages
    132
    Détails du profil
    Informations personnelles :
    Âge : 57

    Informations forums :
    Inscription : Janvier 2007
    Messages : 132
    Points : 160
    Points
    160
    Par défaut
    Bonjour
    J'avais rencontré un problème identique
    Sous NT ou 2000 ou peut utiliser ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        With Application.FileDialog(msoFileDialogFolderPicker)
            .AllowMultiSelect = False
            e = .Show
            If e = -1 Then a$ = .SelectedItems(1)
        End With
    Mais ça marche pas sous 98 ou XP
    A moins qu'il faille rajouter une bibliothèque que je ne connais pas
    Je suppose que tu préfère des solutions qui marchent mais... j'ai pas en stock
    Tiens nous au courant
    Merci

  5. #5
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    Platform3, ton code marche si tu ajoutes à tes référence la bibliothèque d'objets Office (la version) dans les référence de ton projet VBA (menu Outils, Référence). Avec WinXP et OfficeXP, on trouve cette bibliothèque dans les Fichiers communs.

    Le chemin complet :
    C:\Program files\Fichier communs\Microsoft shared\Office 10\MSO.DLL

    Pour Win98 et autres version de Office, j'ignore!

  6. #6
    Futur Membre du Club
    Inscrit en
    Juillet 2007
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Juillet 2007
    Messages : 6
    Points : 6
    Points
    6
    Par défaut
    Salut!!
    Merci à toi Palteforme3 pour ton idée! Le code, tel que tu l'as présenté, ne fonctionne en effet pas chez moi, mais avec l'aide en ligne, j'ai finalement trouvé ma solution. Voici donc le code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Sub CheminDossier()
    With Application.FileDialog(msoFileDialogFolderPicker)
        .AllowMultiSelect = False
            If .Show = -1 Then
    MsgBox "The path is: " & .SelectedItems(1)
            End If
    End With
    End Sub
    Merci encore à tous!!!

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

Discussions similaires

  1. Récupérer le chemin d'un répertoire
    Par sebac dans le forum VB.NET
    Réponses: 2
    Dernier message: 19/06/2008, 13h56
  2. Récupérer le Chemin d'un Répertoire
    Par PiliSql dans le forum VB.NET
    Réponses: 1
    Dernier message: 02/03/2008, 02h36
  3. VBA[E](débutant) Rechercher chemin d'un répertoire donné
    Par pilote301152 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 13/05/2006, 09h33
  4. Récupérer le chemin d'un répertoire
    Par Braz dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 11/04/2006, 10h48
  5. [VBA-E]récupérer le chemin d'accès d'un fichier
    Par gil68 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 05/02/2006, 18h50

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