Au travail, j'utilise un classeur excel par client avec toutes les informations qui lui sont dédiées.
J'en ai créé un nouveau appelé "résultat" que je place dans le même dossier que les tous les autres qui me sert à synthétiser les principales informations de chaque classeur (client). Pour récupérer les infos dans les cellules qui m'intéressent j'utilise le code suivant:
Sub ExtractRefresh()
Dim ScanFic As Office.FileSearch
Dim NomFic As Variant
Dim Nbr As Long
Set ScanFic = Application.FileSearch
With ScanFic
.NewSearch
.LookIn = ActiveWorkbook.Path
.SearchSubFolders = True
.Filename = xls
.MatchTextExactly = True
Nbr = .Execute
For Each NomFic In .FoundFiles
If Right(NomFic, 13) = "resultats.xls" Then GoTo suite
Workbooks.Open Filename:=NomFic
With Workbooks("resultats.xls").Sheets("diagnostics")
.Range("D65536").End(xlUp).Offset(1, 0).Value = ActiveWorkbook.Sheets("Renseignements").Range("D17").Value
End With
ActiveWorkbook.Save
ActiveWorkbook.Close
suite:
Next
End With
End Sub
Ce dernier marche très bien, mais il m'oblige à le relancer dès que j'ai effectué une modification dans un classeur. Je souhaiterais remplacer les valeurs importer dans "résultat" par un lien vers la cellule d'origine, de façon à ce qu'elle soit automatiquement modifiée à l'ouverture suivante lorsque il y à lieu. Je ne sais pas par quoi remplacer le ".value" de la ligne:
ActiveWorkbook.Sheets("Renseignements").Range("D17").Value
pour que ça fonctionne.
Merci encore une fois pour votre aide,
jp
