VBA: entree utilisateur avec un explorateur

_Pitch -  
lermite222 Messages postés 9042 Statut Contributeur -
Bonjour,
Je fais un programme en VBA (Autocad) et je voudrais que l utilisateur choisisse le fichier Excel ou sont situees les donnees source.
Pour cela je voudrais que l utilisateur puisse cliquer sur "parcourrir" et aller selectionner ce fichier.
Quel commande est ce?
Merci
Configuration: Windows XP
Firefox 2.0.0.14

6 réponses

  1. lermite222 Messages postés 9042 Statut Contributeur 1 199
     
    Bonjour, un exemple...
    Sub OuvreFichier()
    Dim nomfich As String
    ChDrive "g" 'la lettre du DD
    ChDir "g:\" 'te place dans le répertoire où sont les fichiers à ouvrir
    'Affiche la boîte de dialogue Ouvrir
    ' nomfich = Application.GetOpenFilename(FileFilter:="Fichier texte(*.txt),*.txt" _
    ' , Title:="Sélectionnez le fichier à ouvrir")
    nomfich = Application.GetOpenFilename(FileFilter:="Tout Fichier (*.*),*.*" _
    , Title:="Sélectionnez le fichier à ouvrir")
    If LCase(Right(nomfich, 3)) <> "xls" Then Stop 'Pas fichier excell
    Workbooks.Open (nomfich)
    End Sub
    A+
    0
  2. _Pitch
     
    C est un bon debut, merci. Cependant j ai encore une erreur:

    FileName = Application.GetOpenFilename("All Files (*.*),*.*" _
    , "Select file")

    ->l object ne supporte pas cette application ou methode.

    J ai essaye comme ca:
    Dim Excel As Application
    FileName = Excel.GetOpenFilename("All Files (*.*),*.*" _
    , "Select file")

    ->La il me dit "Methode non trouvee"

    Mes logiciels sont en anglais, d ou les messages d erreurs speciaux (traduit par moi)

    Suis a court d idee... j arrive pas a comprendre la logique de ce language. Je ne sais pas comment chercher les commandes/method/syntaxes de maniere efficace.
    Quelqu un a une astuce?
    0
  3. lermite222 Messages postés 9042 Statut Contributeur 1 199
     
    Pffftttt, pourquoi voulior changer les variables ?????
    Tu emploi FileName qui est un mot réservé.
    Fait copier coller, et ce ne serra plus un bon début mais une bonne fin.
    A+
    0
  4. _Pitch
     
    Parce que je vis dans un pays anglophone, donc par reflexe...(si un de mes collegues passe derriere moi les variable ne seront pas "parlantes" pour lui.)

    Cela dit tu as raison, je dois faire attention aux "mots reserves"
    J ai refait avec copier coller du premier code: meme erreur. Je dois avoir un truc mal configure...
    sinon j ai trouve ca comme source: https://codes-sources.commentcamarche.net/

    C est bien aussi, mais ta methode plus directe doit suffire a mes besoins.
    En fait je n ai pas besoin d ouvrir le fichier, simplement d enregistrer le chemin pour pouvoir aller chercher les valeurs dont j ai besoin.
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. lermite222 Messages postés 9042 Statut Contributeur 1 199
     
    dans la macro tu sélectionne..
    GetOpenFilename
    et tu tape F1, si ton logiciel est en anglais tu aurras l'aide en anglais.
    A+
    0