VBA - Récupérer des données d'un classeur fermé

Fermé
andrea - 29 avril 2016 à 12:28
 andrea - 2 mai 2016 à 09:20
Bonjour à tous ,

Je début en VBA et j'ai le problème suivant :

J'ai un fichier A et un fichier source. je souhaite extraire des données du fichier source pour les afficher dans le fichier A. J'ai donc mis en place un lien entre les deux fichiers. Cependant, cela nécessitais l'ouverture du fichier source, pour que le fichier A ce mette à jour.

j'ai donc ecrit le code suivant, que j'ai réussis à avoir à l'aide d'un utilisateur:


Sub ImporterDonneesSansOuvrir()

'Déclaration variable chemin et nom en texte
Dim Cheminsource As String
Dim Fichiersource As String

'Définition contenu variable
Cheminsource = "I:\G_AMEC\ETAT AMEC2\Etat AMEC 2 \" '
Fichiersource = "Etat AMEC 2 (version 2).xlsm"

'Création d'une plage de remontée de données à partir du fichier source fermé sinon bug, de la feuille calculs et de la plage cellule voulue
ThisWorkbook.Names.Add "plage", _
RefersTo:="='" & Cheminsource & "[" & Fichiersource & "]calculs'!H9"


With Worksheets("RECAP") ' feuille du fichier A

Worksheets("RECAP").Range("F49").Value = "=plage"
End With

End Sub



Mais ce code affiche 0 et non la valeur voulue ... Avez vous une idée ?

merci d'avance
A voir également:

2 réponses

Patrice33740 , super ca marche ! merci beaucoup !

Seulement, lorsque j'execute le programme, il me redemande de remettre à jour les valeurs : une boite de dialogue s'ouve et je dois selectionner le fichier source. Sais tu comment contourner cette boite de dialogue ?

Merci encore
5
Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 776
Modifié par Patrice33740 le 29/04/2016 à 21:11
Re,

Si la boite de dialogue apparait c'est que soit le Cheminsource, soit le Fichiersource ne sont pas corrects ou encore qu'il n'y a pas de feuille "calculs" dans le fichier source.
0
ok, merci de ta réponse, je vais essayer de voir ce qui cloche!
0