Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

VBA : chercher un dossier avec variable dans nom du fichier

juliedah

XLDnaute Nouveau
Bonjour à tous,

Je cherche à récupérer un fichier excel qui dépend :
1 - d'une première variable au niveau du nom du dossier dans lequel il est
2 - d'une seconde variable au niveau du nom du fichier dans ce dossier

Pour que vous visualisiez, j'ai des dossiers U:\Fromage\Camembert\ dans lequel j'ai Camembert v1.xlms, Camembert v2.xlms etc; des dossiers U:\Fromage\Brie\ dans lequel j'ai Brie v1.xlms, Brie v2.xlms etc

J'ai inscrit dans une cellule le chemin d'accès (ex : U:\Fromage\Camembert\) et je cherche à appeler le dossier selon la variable du nom dossier, c'est à dire : si dans ma cellule A1 il y a écrit "U:\Fromage\Camembert\" je veux pouvoir appeler ce dossier avec ensuite le nom du fichier que je veux "\ Camembert v1.xlms" si dans ma cellule A2 il y a marqué "v1".

Je ne sais pas si je suis clair donc n'hésitez pas à me poser des questions !

Voilà ce que j'ai fait pour l'instant :

Sub MàJ_Results()

Dim repertoire As String
Dim version As Variant

For i = 70 To 97
repertoire = Cells(i, 2) ' dans cette cellule est renvoyé le chemin d'accès au dossier mais sans le nom du fichier après
version = Cells(i, 1) ' dans cette cellule est renvoyé le numéro de version 1, 2, 3 etc

ChDir " " & repertoire & " \Camembert v" & version & " "

Workbooks.Open Filename:= _
" " & repertoire & " \Camembert v " & version & " .xlsm "

Next i

End Sub



Merci d'avance !
 

Robert

XLDnaute Barbatruc
Repose en paix
Re : VBA : chercher un dossier avec variable dans nom du fichier

Bonjour Julie, bonjour le forum,

Essaie comme ça :
Code:
Sub MàJ_Results()
Dim I As Byte
Dim R As String
Dim V As String

For I = 70 To 97
    R = Cells(I, 2).Value 'par exemple : B70 = "U:\Fromage\Camembert\"
    V = Cells(I, 1).Value 'par exemple : A70 = "v2"
    'ça donne : "U:\Fromage\Camembert\Camembert v2.xlsm"
    Workbooks.Open (R & Split(R, "\")(2) & " " & V & ".xlsm")
Next I
End Sub
 

thebenoit59

XLDnaute Accro
Re : VBA : chercher un dossier avec variable dans nom du fichier

Bonjour Juliedah.

Je te propose le code suivant, à adapter à tes besoins.

Code:
Sub Recupere_Fichier()
Dim Repertoire As String, Version As String, Fichier As String
    Repertoire = Cells(1, 1).Value
    If Dir(Repertoire, vbDirectory) = "" Then MsgBox "Le répertoire n'existe pas", 16: Exit Sub
    Version = Cells(2, 1).Value
    Fichier = Repertoire & "\Camembert " & Version & ".xlsm"
    If Dir(Fichier) = "" Then MsgBox "Le fichier n'existe pas", 16: Exit Sub
End Sub
 

Discussions similaires

Réponses
36
Affichages
2 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…