[VBA/EXCEL] ouvrir.txt à adresse définie

Résolu
sfritz Messages postés 49 Statut Membre -  
sfritz Messages postés 49 Statut Membre -
Bonjour,
je travaille actuellement sous VBA/Excel, je cherche à ouvrir un fichier texte (.txt); j'utilise la commande suivante qui marche très bien:

fileToOpen = Application.GetOpenFilename("Text Files (*.txt), *.txt"

Mon problème est le suivant, la recherche du fichier commence dans mes documents, mais le fichier texte que je recherche se trouve dans le même dossier que le fichier Excel, j'ai donc pensé rajouter ThisWorkbook dans l'adressage du fichier pour gagner le temps de recherche:

fileToOpen = Application.GetOpenFilename("ThisWorkbook.Text Files (*.txt), *.txt"

Mais la recherche commence toujours dans mes documents.

Y a-t-il une solution pour que la recherche soit directement dans le même répertoire que mon fichier excel?

Si oui, pouvez vous m'aider?

Merci
Configuration: Windows XP
Firefox 2.0.0.11

4 réponses

  1. Utilisateur anonyme
     
    Bonjour,

    Ne connaissant pas la structure de votre ou vos disque(s) dur, j'inclue aussi le cas ou
    vous auriez plus d'un disque dur et/ou plus d'un disque logique.

    Exemple type :

    Sub Ouvrir()
    
        Dim FileToOpen As Variant
        Dim Chemin As String
        Dim Lecteur As String
        
        Chemin = ThisWorkbook.Path
        Lecteur = Mid(Chemin, 1, 2)
        ChDrive Lecteur
        ChDir Chemin
        
        FileToOpen = Application.GetOpenFilename("Text Files (*.txt), *.txt")
    
    End Sub
    '
    

    Lupin
    0
  2. sfritz Messages postés 49 Statut Membre 6
     
    Merci, ça marche nickel.

    Juste pour info, pour aller dans un dossier enfant de ThisWorkbook, il faut faire la commande suivante:

    Chemin = ThisWorkbook.Path & "\Répertoire de stockage\"

    Encore merci.
    0
  3. Utilisateur anonyme
     
    re :

    Exact, vous avez compris :-)

    Lupin
    0
  4. sfritz Messages postés 49 Statut Membre 6
     
    Un petit problème, je faisais la manip (Chemin = ThisWorkbook.Path) sous Excel 2003 et ça m'ouvrait directement le bon répertoire, mais en essayant sous Excel 2007 ça n'a pas marché, pouvez vous m'aider?

    Correction:
    Finalement j'ai réussi, en fait je n'avais pas rajouter :

    Lecteur = Mid(chemin, 1, 2)
    ChDrive Lecteur

    dans mon programme, qui fonctionnait parfaitement sans sous excel 2003.

    Mon fichier étant sur clé USB, j'ai lancé le programme sur un autre PC équipé d'Excel 2007, mais la recherche commençait de nouveau dans mes documents.

    J'ai donc finalement rajouter l'adresse du lecteur, et ça refonctionne.
    0