Transformation inopinée d’une référence de type A1 en L1C1 Le sujet est résolu

Y compris Power BI, Power Query et toute autre question en lien avec Excel
g
gyrus
Membre habitué
Membre habitué
Messages : 141
Appréciations reçues : 21
Inscrit le : 8 avril 2019
Version d'Excel : 2013 FR

Message par gyrus » 24 mai 2019, 23:15

Bonjour à tous,

Je suis confronté à un problème que je souhaite partager avec vous car je ne parviens pas à me l’expliquer. :scritch:
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.
Avatar du membre
eriiic
Passionné d'Excel
Passionné d'Excel
Messages : 8'731
Appréciations reçues : 296
Inscrit le : 7 février 2010
Version d'Excel : 2010fr

Message par eriiic » 24 mai 2019, 23:43

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
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.
(les Shadoks)

En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
g
gyrus
Membre habitué
Membre habitué
Messages : 141
Appréciations reçues : 21
Inscrit le : 8 avril 2019
Version d'Excel : 2013 FR

Message par gyrus » 25 mai 2019, 00:04

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.
Avatar du membre
eriiic
Passionné d'Excel
Passionné d'Excel
Messages : 8'731
Appréciations reçues : 296
Inscrit le : 7 février 2010
Version d'Excel : 2010fr

Message par eriiic » 25 mai 2019, 09:22

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
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.
(les Shadoks)

En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
g
gyrus
Membre habitué
Membre habitué
Messages : 141
Appréciations reçues : 21
Inscrit le : 8 avril 2019
Version d'Excel : 2013 FR

Message par gyrus » 25 mai 2019, 16:37

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 ! :secu:
g
gyrus
Membre habitué
Membre habitué
Messages : 141
Appréciations reçues : 21
Inscrit le : 8 avril 2019
Version d'Excel : 2013 FR

Message par gyrus » 25 mai 2019, 20:18

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.
Avatar du membre
eriiic
Passionné d'Excel
Passionné d'Excel
Messages : 8'731
Appréciations reçues : 296
Inscrit le : 7 février 2010
Version d'Excel : 2010fr

Message par eriiic » 25 mai 2019, 23:42

Peut-être une maj (?)
En essayant continuellement, on finit par réussir.
Donc plus ça rate, plus on a de chances que ça marche.
(les Shadoks)

En plus du merci (si si, ça se fait !!!), penser à mettre en résolu. Merci
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message