Liens documents Excel
Fermé
majagypsie
Messages postés
1
Date d'inscription
mardi 31 août 2010
Statut
Membre
Dernière intervention
31 août 2010
-
31 août 2010 à 20:01
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 1 sept. 2010 à 08:47
michel_m Messages postés 16603 Date d'inscription lundi 12 septembre 2005 Statut Contributeur Dernière intervention 16 décembre 2023 - 1 sept. 2010 à 08:47
A voir également:
- Liens documents Excel
- Liste déroulante excel - Guide
- Si et excel - Guide
- Aller à la ligne excel - Guide
- Word et excel gratuit - Guide
- Mise en forme conditionnelle excel - Guide
1 réponse
michel_m
Messages postés
16603
Date d'inscription
lundi 12 septembre 2005
Statut
Contributeur
Dernière intervention
16 décembre 2023
3 310
Modifié par michel_m le 1/09/2010 à 08:22
Modifié par michel_m le 1/09/2010 à 08:22
Bonjour
dans ton classeur source (classeur1) module Thisworkbook; cette macro mémorise l'emplacement de la source lorsque tu ouvres ce classeur
dans le classeur cible module this workbook, cette macro renvoie sur la feuille active en B2 l'emplacement de la source lorsque tu ouvres ce classeur
Enfin, pour que les liaisons suivent, il faut utiliser la fonction INDIRECT dans tes formules. par exemple valeur de C10 feuil1 du fichier source
on peut également le faire en utilisant la base de registre, mais je ne me souviens plus sur quelle étagère de mon grenier j'ai "rangé" les codes !!! si je trouve (en cherchant autre chose) je te communiques ze codes...
:-x
dans ton classeur source (classeur1) module Thisworkbook; cette macro mémorise l'emplacement de la source lorsque tu ouvres ce classeur
Private Sub Workbook_Open() Dim chemin As String chemin = ThisWorkbook.Path ' ("curiosité" trouvée sur le site web de Laurent Longre ("hidden namespace") ) ExecuteExcel4Macro "set.name(""macroxl4"",""" & chemin & """)" End Sub
dans le classeur cible module this workbook, cette macro renvoie sur la feuille active en B2 l'emplacement de la source lorsque tu ouvres ce classeur
Private Sub Workbook_Open() Range("B2") = Application.ExecuteExcel4Macro("get.name(""macroxl4"")") End Sub
Enfin, pour que les liaisons suivent, il faut utiliser la fonction INDIRECT dans tes formules. par exemple valeur de C10 feuil1 du fichier source
=INDIRECT("'"&B2&"\[Classeur1.xls]Feuil1'!$C$10")
on peut également le faire en utilisant la base de registre, mais je ne me souviens plus sur quelle étagère de mon grenier j'ai "rangé" les codes !!! si je trouve (en cherchant autre chose) je te communiques ze codes...
:-x
Modifié par michel_m le 1/09/2010 à 08:50
les fouilles ont réussi !!!
dans classeur source:
dans classeur cible
Ensuite m^me punition pour la fonction "indirect"
Pour nettoyer la base de registre dans un module de la source
source: d'après Eric Renaud