[Excel] Pb de liaison dynamique
ougandor
-
kjorgahn -
kjorgahn -
Bonjour tout le monde
Voila j'ai un fichier excel qui s'appui sur 8 autre fichiers excel pour realiser les calculs demandé.
Mon probleme est le suivant : d'une année sur l'autre le fichier excel principal ne change pas par contre le nom des 8 autre fichier excel changent ce qui me pose un pb de liaison lors de l'ouverture de ce fichier.
Comment puis je faire pour automatiser la mise a jour des liaisons svp ? sans que ce soit a faire a la main.
Merci d'avance
Je suis désole si je post au mauvais endroit mais c'est la premiere fois que j'utilise ce forum.
Voila j'ai un fichier excel qui s'appui sur 8 autre fichiers excel pour realiser les calculs demandé.
Mon probleme est le suivant : d'une année sur l'autre le fichier excel principal ne change pas par contre le nom des 8 autre fichier excel changent ce qui me pose un pb de liaison lors de l'ouverture de ce fichier.
Comment puis je faire pour automatiser la mise a jour des liaisons svp ? sans que ce soit a faire a la main.
Merci d'avance
Je suis désole si je post au mauvais endroit mais c'est la premiere fois que j'utilise ce forum.
A voir également:
- [Excel] Pb de liaison dynamique
- Liste déroulante excel - Guide
- Tableau croisé dynamique excel exemple - Guide
- Word et excel gratuit - Guide
- Si ou excel - Guide
- Déplacer colonne excel - Guide
9 réponses
bonjour ougandor,
tu es au bon endroit.
mais pour que quelqu'un propose, ne serait-ce qu'un début de piste, pour aider à résoudre ton problème, il faut que tu donnes plus de détails :
les noms des 8 autres fichiers sont-ils du même format, avec une racine commune et une partie "variable", par exemple en fonction de la date. si c'est le cas, les liens peuvent sans doute être rafraichis via VBA. sinon, ça risque d'être difficile...
tu es au bon endroit.
mais pour que quelqu'un propose, ne serait-ce qu'un début de piste, pour aider à résoudre ton problème, il faut que tu donnes plus de détails :
les noms des 8 autres fichiers sont-ils du même format, avec une racine commune et une partie "variable", par exemple en fonction de la date. si c'est le cas, les liens peuvent sans doute être rafraichis via VBA. sinon, ça risque d'être difficile...
Je vous le dit tout de suite, je n'ai pas la réponse ...
(mais je me pose une question qui ne me semble pas si loin de la tienne Ougandor)
Est ce possible de faire référence à tous les fichiers d'un même répertoire ?
exemple :
imaginons que l'on a plusieurs fichiers ( meme ligne d entete, et même type de données dans les cellules), on souhaite faire une synthese de ces fichiers sous un autre classeur.
(facile c vrai qd ils ne changent pas de noms et qd ils sont déjà tous là !... problématique dans le cas contraire)
En placant tous ces fichiers dans le MEME REPERTOIRE, est ce alors possible de leur faire référence via vba (ou autre moyen qui sait), l'idée étant que si on ajoute un nouveau fichier dans le répertoire quelque soit son nom, il soit automatiquement inclus lui aussi dans la synthése... (et inversement si on en supprime...)
Ya t il un savant fou dans le forum ? lol
(mais je me pose une question qui ne me semble pas si loin de la tienne Ougandor)
Est ce possible de faire référence à tous les fichiers d'un même répertoire ?
exemple :
imaginons que l'on a plusieurs fichiers ( meme ligne d entete, et même type de données dans les cellules), on souhaite faire une synthese de ces fichiers sous un autre classeur.
(facile c vrai qd ils ne changent pas de noms et qd ils sont déjà tous là !... problématique dans le cas contraire)
En placant tous ces fichiers dans le MEME REPERTOIRE, est ce alors possible de leur faire référence via vba (ou autre moyen qui sait), l'idée étant que si on ajoute un nouveau fichier dans le répertoire quelque soit son nom, il soit automatiquement inclus lui aussi dans la synthése... (et inversement si on en supprime...)
Ya t il un savant fou dans le forum ? lol
Bonsoir lulu37,
en pièce jointe https://www.cjoint.com/?iExfHyUbZI un début de réponse pour ta question.
la macro liste les fichiers d'un répertoire que tu choisis.
il ne rest plus qu'à boucler sur ces fichiers, qu'à tester éventuellement si ce sont des classeurs excel et à les maltraiter correctement.
cordialement
en pièce jointe https://www.cjoint.com/?iExfHyUbZI un début de réponse pour ta question.
la macro liste les fichiers d'un répertoire que tu choisis.
il ne rest plus qu'à boucler sur ces fichiers, qu'à tester éventuellement si ce sont des classeurs excel et à les maltraiter correctement.
cordialement
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Re,
Ca plante dans : Sub Arborescence_simple_Dossier()
au niveau de : Dim fso As New FileSystemObject
ca me met le message suivant :
"erreur de compilation : projet ou bibliotheque introuvable "
??
A suivre
Ludivine
Ca plante dans : Sub Arborescence_simple_Dossier()
au niveau de : Dim fso As New FileSystemObject
ca me met le message suivant :
"erreur de compilation : projet ou bibliotheque introuvable "
??
A suivre
Ludivine
Bonsoir,
bien-sûr, c'est vrai..... il faut ajouter la référence à "Microsoft Scripting Runtime" (menu Outils/références de VBA)
désolé de l'oubli
A+
bien-sûr, c'est vrai..... il faut ajouter la référence à "Microsoft Scripting Runtime" (menu Outils/références de VBA)
désolé de l'oubli
A+
Sub Actualisation()
Dim réf1 As String
réf1 = Range("A1").Text
ActiveWorkbook.Names.Add Name:=réf1, RefersTo:= _
"='" & Range("B1").Text
End Sub
Là tu crées un nom (cellule A1), avec la référence du résultat de B1
Attention il y a dans la macro le ' déjà pris en compte au début de ta référence.
Donc au lieu de mettre en B1 : ='c:\....\monfichier.xlsm'!nom
il ne faut mettre que c:\...\monfichier.xlsm'!nom
Dim réf1 As String
réf1 = Range("A1").Text
ActiveWorkbook.Names.Add Name:=réf1, RefersTo:= _
"='" & Range("B1").Text
End Sub
Là tu crées un nom (cellule A1), avec la référence du résultat de B1
Attention il y a dans la macro le ' déjà pris en compte au début de ta référence.
Donc au lieu de mettre en B1 : ='c:\....\monfichier.xlsm'!nom
il ne faut mettre que c:\...\monfichier.xlsm'!nom