Récupération de la valeur d'une cellule

Résolu
DD4477 -  
 DD4477 -
Bonjour,

Dans une macro VBA je demande de pointer sur le chemin du repertoire écrit en dur ici auquel j'ajoute le nom du fichier puis je lance la procedure qui va bien

With Sheets(output_sheet).QueryTables.Add(Connection:="TEXT;C:\Users\truc\Desktop\SPES\" + file_name, Destination:=Sheets(output_sheet).Range("$A$" + row_number))

Je voudrais si possible saisir ce chemin dans une cellule (A2 par exemple) pour que VBA aille chercher le contenu de la cellule plutôt que de saisir en dur dans la procedure, j'ai 40 procedure identiques avec 40 chemins differents

J'ai essayer avec [classeur]feuil2.A2 ou $A2$ ou autre sans succès.
J'ai même tenter de copier le classeur dans le repertoire et de declarer Thisworkbook sans succes.

Merci de votre aide.

2 réponses

  1. ThauTheme Messages postés 1564 Statut Membre 160
     
    Bonjour DD, bonjour le forum,

    Jamais utilisé ce genre de code mais peut-être que :
    With Sheets(output_sheet).QueryTables.Add(Connection:="TEXT;" & Sheets("Ton_Onglet").Range("A2").Value & file_name, Destination:=Sheets(output_sheet).Range("$A$" + row_number)) 

    0
  2. DD4477
     
    Salut Thautheme,

    Merci de votre contribution ;

    Votre idée m'a aidé à trouvé la solution :
    Le Range(A2) contenait un chemin c:\chemin\repertoire\
    VBA refuse le : donc j'ai modifie l'expression

    With Sheets(output_sheet).QueryTables.Add(Connection:="TEXT;" & Sheets("Ton_Onglet").Range("A2").Value & file_name

    par

    With Sheets(output_sheet).QueryTables.Add(Connection:="TEXT;C:\" & Sheets("Ton_Onglet").Range("A2").Value & file_name

    avec la cellule A2 contenant uniquement chemin\repertoire\

    ca marche du tonnerre :)
    0
    1. DD4477
       
      probleme resolu
      0