Bonjour à tous,
Contexte :
J'ai une appli Excel qui toune (en Lecture Seule pour ne pas écraser les formules) avec plusieurs onglets et dedans, des tableaux et des cellules contenant des liaisons "de base", amenées à être modifiées en fonction du fichier présenté en entrée: "bruit00.xls" (fichier qui porte tjrs le mm nom mais qui se situe tjrs dans un répertoire différent, de la mm arbo.).
Dans la partie qui m'intéresse, j'ai 2 onglets qui comportent 2 tableaux de forme identique :
1) onglet Recap: mesures n° 1 à 20 ;
2) onglet Recap2: mesure n° 21 à 40
Et dans les cellules de mes tableaux, j'ai tjrs appel à la même référence comme: =+Feuil1! ; ceci concaténée à l'adresse de la cellule: $A$XXX.
Méthode utilisée :
1) D'abord, on empêche la mise à jour des liaisons automatiques pour que ce soit...
2) ...la méthode Calculate qui s'en charge puis, reporte les résultats dans les cellules de toutes mes feuilles du classeur !
Alors pourquoi la Calculate ne fonctionne pas sur tous les classeurs ouverts (seulement la feuille active Recap) !?!
Qu'en pensez-vous car je ne vois pas ce qui cloche ?
Merci d'avance
//***************//
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 Private Sub workbook_open() Dim obj, oSerie As Variant Application.AskToUpdateLinks = False appPath = ThisWorkbook.path Do dataPath = GetDirectory("Choisir le répertoire contenant la donnée:") Loop While dataPath = "" If dataPath <> "" Then 'MsgBox ("'" & dataPath & "\" & filePath & "Feuil1'") =>OK Cells.Replace What:="Feuil1", Replacement:="'" & dataPath & "\" & filePath & "Feuil1'", MatchCase:=False End If For Each obj In ActiveWorkbook.Sheets obj.Calculate Next End Sub
Partager