Bonjour Odette, Jean-Marie et le Forum,
Oui Odette, comme tu le supposais toi même dans ton Email il est préférable de s'adresser directement dans le forum que dans les BAL des intervenants. C'est une petite erreur des NewBies souvent dans les Forums. Tu auras tout l'avantage que d'autres connaissent une réponse mieux appropriée à ta question.
Pour la fonction "Indirect" j'ai trouvé l'inverse pour avoir un nom de plage dynamique, car j'ai fait un tour dans les archives du MPFE... Pour un autre cas de figure ils utilisent "Décaler" couplé avec "NBVal" et ça donne ceci dans la définition du Nom : (ce n'est pas ce que tu veux, mais c'est juste pour voir si l'on perd aussi "Atteindre")
=DECALER(Feuil1!$A$1;;;NBVAL(Feuil1!$A:$A);1)
Donc j'en conclus que définir un nom de cette manière annule toute possibilité d'utiliser "Atteindre" (Goto) ou simplement la petit liste "Zone Nom" (en haut à droite de la barre de formule).
Par conséquent j'en reviens à la Macro que je proposais hier qui, elle, renomme exactement comme si tu le fais à la main et te permettra la recherche de la plage Nommée par F5, Goto, Liste "Zone Nom"...
Sub Renomme()
ActiveWorkbook.Names.Add _
Name:="MONTANT", _
RefersTo:="=Chrono!$I2:$I15000"
End Sub
Ensuite le problème reste à "capter" l'évènement d'insertion de ligne (ou de supression) et là je butte, car l'action "insertion seule" n'agit pas comme un évènement de la feuille "Change", ni "Calculate", ni "SelectionChange".... Donc il faut le lancer d'une manière où l'on est certain que le User activera cette macro.
Vu que tu travailles en Multi-UTilisateurs, donc de toute manière il faudra bien que ton User sauve son changement pour qu'il soit effective sur les autres classeurs en lien... Donc l'évènement BeforeSave dans le Private Module de ThisWorkBook peut convenir comme ceci :
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Renomme
End Sub
On peut aussi la lancer dans l'évènement BeforeClose, Open etc... Ou encore dans le Private Module de la feuille Chrono elle-même sur des évènements tels que Worksheet_SelectionChange, car je suppose que le User fera bien une sélection de cellule après avoir inséré une ligne ... (?)
NB La macro "renomme" étant placée dans un module standard....
Voilà Odette tu as cette possibilité VBA, qui peut venir à ton secours !!
Et donc heureux de savoir que tu nous mets dans tes favoris !!
Bon Dimanche
@+Thierry