Recuperation Valeur

Résolu
Bonjour,

Voici mon problème:

Je souhaite récupérer une valeur dans un autre fichier Excel fermé.

Je connais le lien du fichier cependant, ce dernier est créé à l'aide de deux cellules:
Je m'explique:
- dans ma cellule A1: j'ai le nom du dossier
- dans ma cellule A2: j'ai le nom du fichier
Avec ces deux cellules je crée un lien: C:\User\....\Nom_Du_Dossier\[Fichier.xls]Feuil1'!$A$1

Je voudrais que dans ma cellule A3 s'affiche la valeur A1 de l'autre fichier.

Si je rajoute " =' '' devant le lien, j'ai une fenêtre qui s'ouvre pour aller chercher le dossier manuellement, si j'appuie sur la touche Echap le lien semble actif mais j'ai 300 lignes et j'ai moyennement envie d'appuyer sur Echap 300 fois ^^

Je sais pas si la fin de mon problème est clair, pouvez vous m'aider ?

Merci d'avance et bon week end :)

Cordialement,

Raf'

1 réponse

  1. Contributeur
    bonjour, suggestion:
    =indirect("'"&A1&"\["&A2&"]Feuil1'!$A$1") 
    1. Bonjour,
      Cela ne marche pas :/
      Je crée le chemin d'accès en utilisant les maccro et j'injecte celui si dans A3.
      Ainsi dans A3, j'ai actuellement: C:\Users\.....\0101\[Répartition-charges-indirectes.xls]Feuil1'!$A$1
    2. Contributeur
      @rafaledu43si tu ne peux pas nous montrer tes macros, peut-être alors en faisant une formule
      =indirect(A3)
    3. J'ai ça comme code:

      Sub Bouton2_Cliquer()
      derniereligne = Range("A1").End(xlDown).Row
      For i = 2 To derniereligne
      chemin = "C:\Users\PROPRIETAIRE\Desktop\"
      chemin3 = Cells(i, 1).Value
      chemin2 = Cells(i, 2).Value
      cheminfinal = "C:\Users\KEVIN\Desktop\" & chemin2 & "\[" & chemin3 & ".xls]Feuil1'!$A$1"

      Cells(i, 3).Value = cheminfinal
      Next
      End Sub
    4. Contributeur
      @rafaledu43alors peut-être ainsi:
      Option Explicit
      
      Sub Bouton2_Cliquer()
      Dim derniereligne As Long, i As Long
      Dim chemin3 As String, chemin2 As String
      Dim wb As Workbook
      Dim ext As Worksheet, ceci As Worksheet
      Set ceci = ActiveSheet
      derniereligne = Range("A1").End(xlDown).Row
      For i = 2 To derniereligne
          chemin3 = ceci.Cells(i, 1).Value
          chemin2 = ceci.Cells(i, 2).Value
          Set wb = Workbooks.Open(chemin3 & "\" & chemin2)
          Set ext = wb.Sheets("Feuil1")
          ceci.Cells(i, 3).Value = ext.[A1]
          wb.Close
      Next i
      End Sub
    5. Super cela marche ! Merci beaucoup !