Transformation inopinée d’une référence de type A1 en L1C1

Bonjour à tous,

Je suis confronté à un problème que je souhaite partager avec vous car je ne parviens pas à me l’expliquer.

Lorsque j’effectue la création d’un nouveau nom avec Excel, pas de souci.

Exemple : Nom "Essai" qui fait référence à =Feuil1!$A$1

Lorsque j’enregistre la macro correspondante, j’obtiens :

    ActiveWorkbook.Names.Add Name:="Essai", RefersToR1C1:="=Feuil1!R1C1"
    ActiveWorkbook.Names("Essai").Comment = ""

Je supprime le nom "Essai", je lance l’exécution de la macro et j’obtiens bien la création du nom "Essai" mais avec la référence =Feuil1!'L1C1'

Je précise que mon classeur n’est pas en style de référence L1C1 (case décochée dans les options > Formules).

En espérant que l’un de vous aura été confronté à cette ‘’anomalie’’ et pourra me donner une explication (et éventuellement une solution).

Cordialement.

Bonjour,

ce n'est pas une anomalie, l'enregistreur met toujours les références en R1C1.

Qui présente dans certains cas des avantages sur la notation A1, surtout en relatif pour une formule sur feuille.

Rien ne t'empêche de modifier ce que t'a écrit l'enregistreur si ça t'arrange :

RefersTo:="=Feuil1!A1"

eric

Bonjour eriiic,

Merci pour ta réponse.

Si je place RefersTo:="=Feuil1!A1" dans la macro, dans le gestionnaire de noms j'obtiens la référence =Feuil1!'LC'

Cordialement.

Bonjour,

Du coup je viens de contrôler.

En fait, sur 2010, que je mette RefersToR1C1:="=Feuil1!R1C1" ou RefersTo:="=Feuil1!$A$1" j'obtiens bien =Feuil1!$A$1 dans le nom.

Ecris rapidement hier soir, j'avais oublié les $ de la ref (sinon il écrit la référence relative à la sélection en cours).

Peut être un soucis avec ta version excel. MS aime bien ajouter des bugs sur 365, et depuis 2013 pas mal de surprises étranges.

eric

Bonjour,

Par acquit de conscience, j'ai passé l'antivirus (scan total) ... RAS ... mais pas de changement pour Excel.

J'ai désinstallé Office 2013 pour passer à Office 2016 ... toujours pareil.

La vérité est ailleurs !

Bonne nouvelle ! Le fonctionnement normal est rétabli.

Les 3 codes suivants donnent un résultat cohérent sous Formules > Gestionnaire de noms, à savoir les formules en type de référence A1:

ActiveWorkbook.Names.Add Name:="Test", RefersToR1C1Local:="=Feuil1!L1C1"

renvoie =Feuil1!$A$1

ActiveWorkbook.Names.Add Name:="Test2", RefersToR1C1:="=Feuil1!R2C1"

renvoie =Feuil1!$A$2

ActiveWorkbook.Names.Add Name:="Test3", RefersTo:="=Feuil1!$A$3"

renvoie =Feuil1!$A$3

Par contre, il m'est impossible de dire quelle manip a permis ce retour en grace.

La seule en lien direct est un coché/décoché de l'option Style de référence L1C1, mais je doute ...

Cordialement.

Peut-être une maj (?)

Rechercher des sujets similaires à "transformation inopinee reference type l1c1"