XL 2016 Transcrire le format A1 dans le format R1C1

Aloha

XLDnaute Accro
Bonjour,

Existe-t-il une aide pour transformer A1 en R1C1?

Si j'ai bien compris, si on construit une formule dans VBA, la référence dépend de la cellule dans laquelle la formule est inscrite, ce qui rend la transcription compliquée.

Un exemple réel:

dans la cellule H8 doit être inscrite la formule:

=HLOOKUP($E$2;INDIRECT("[....xls]"&"Personnel"&"!$d$3:$ai$489");33;0)

Cette formule sera comment dans le format R1C1?

Bonne journée
Aloha
 

Jauster

XLDnaute Occasionnel
Salut,

Je ne sais pas si il existe une bonne méthode pour trouver ça, mais étant débutant en VBA ça me fait aussi bien galérer. Du coup je triche un peu :
- Ecris ta formule en format A1 dans ta cellule H8 (sans macro, juste à la main)
- Puis Fichier > Option > Formule > Cocher "Reference R1C1"
- Retourner voir la formule en H8 qui est alors passée en R1C1 :)

Ça m'aide pas mal au début pour comprendre le fonctionnement du R1C1
 

Fichiers joints

Aloha

XLDnaute Accro
Bonjour,
J'ai déjà essayé cela.
Voici le résultat (Excel allemand):
=HLOOKUP(Z2S5;INDIRECT("[.....xls]"&"Personnel"&"!$d$3:$ai$489");33;0)
Les références entre guillemets ne sont pas transcrites, puisqu'elles sont considérées comme texte.
Ce n'est donc pas la solution.
Bonne journée
Aloha
 

vgendron

XLDnaute Barbatruc
Hello
perso, j'ai horreur des références R1C1: je trouve que ca rend les formules incompréhensibles..
du coup, j'utilise la méthode suivante
j'écris la formule comme chaine de caractères dans la variable formule
les ; doivent etre remplacés par ,
les " doivent etre doublés

formule="=HLOOKUP(Z2S5,INDIRECT(""[.....xls]""&""Personnel""&""!$d$3:$ai$489""),33,0)"

puis je colle la formule dans la cellule
range("H8").formula=formule
et reste plus qu'à tirer
 

Jauster

XLDnaute Occasionnel
Hello
perso, j'ai horreur des références R1C1: je trouve que ca rend les formules incompréhensibles..
du coup, j'utilise la méthode suivante
j'écris la formule comme chaine de caractères dans la variable formule
les ; doivent etre remplacés par ,
les " doivent etre doublés

formule="=HLOOKUP(Z2S5,INDIRECT(""[.....xls]""&""Personnel""&""!$d$3:$ai$489""),33,0)"

puis je colle la formule dans la cellule
range("H8").formula=formule
et reste plus qu'à tirer
Cela va forcement ralentir la macro ? Est-ce perceptible ou uniquement sur les grosses macro ?
 

youky(BJ)

XLDnaute Barbatruc
Bonjour Tous,
Un petit plus pour aider
En VBA j'ouvre la fenêtre exécution et j'écris (avec le point interrogation et valider par Entrée)
?range("H8").FormulaR1C1
cela donne de bons renseignements...
Bruno
 

Aloha

XLDnaute Accro
Bonsoir,
Merci pour vos bons conseils.
Finalement, j'ai enregistré la composition des formules caractère par caractère. La solution la plus simple, je pense.
Bien à vous
Aloha
 

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas