Remplacer une référence dans les propriétées d'un nom

Bonjour à tous,

Contexte:

J'ai une liste conséquente de "nom" qui font référence à un onglet "C56".

Problème:

Je met régulièrement à jour les modèles des onglets que j'utilise. Pour cela je nomme l'onglet que je souhaite mettre à jour avec la mention "old" et crée un nouveau sur la base de mon modèle.

Question:

Je souhaiterai faire une macro dans laquelle une boucle remplace les références à l'onglet "C56 old" par "C56" dans les propriétées (RefersTo, RefersToLocal, RefersToR1C1, RefersTOR1C1Local) des noms utilisé dans l'onglet en question.

D'avance merci pour vos contributions.

Cordialement

Bonjour,

une proposition de solution

Sub vasy()
old_name = "old_C56"
new_name = "C56"
For Each n In ActiveWorkbook.Names
n.RefersToR1C1 = Replace(n.RefersToR1C1, old_name, new_name)
Next
End Sub

Bonjour,

C'est un très bonne suggestion, j'ai cependant un point à clarifier, la référence est du type : ='C54-CY old'!$Y$11

Comment sélectionner et remplacer ='C54-CY old'! par ='C54-CY'! sans que la suite $Y$11 ne soit changé?

D'avance merci.

Bonjour,

as-tu essayé la macro ?

Oui mais elle ne fonctionne pas.

Rebonjour,

dans le fichier test que je me suis construit sur base de tes explications cela fonctionne (comme je l'ai compris)

regarde les noms avant et après l'exécution de la macro "Vasy"

13changename.xlsm (14.80 Ko)

Bonjour h2s04,

C'est parfait, merci beaucoup, cela va me faire gagner beaucoup de temps grâce à toi.

Bonne journée.

Rechercher des sujets similaires à "remplacer reference proprietees nom"