Bonjour,
L'utilisation de l'enregistreur de macros est le plus simple.
Après avoir lancer l'enregistreur de macros, tu tapes la formule, tu valides par entrée et tu arrêtes l'enregistreur.
Si la formule est déjà encodée et après avoir lancé l'enregistreur, tu places le curseur à la fin de la formule dans la zone des formules et tu valides par entrée
Voici le code généré
=INDEX(LAB!$A$10:$BZ$69;EQUIV(1;(LAB!$A$10:LAB!$A$98=$A5)*(LAB!$B$10:LAB!$B$98=$B5)*(LAB!$C$10:LAB!$C$98=$C5);0);3+G$4)
SI tu préfères la formule en notation A1, tu vas dans la fenêtre Exécution de l'éditeur VBE (Ctrl+G) et tu tapes la commande suivante en supposant que la formule se trouve en G5 et qu'elle a déjà été encodée
Voici le code généré
=INDEX(Lab!$A$10:$BZ$69,MATCH(1,(Lab!$A$10:Lab!$A$98=$A5)*(Lab!$B$10:Lab!$B$98=$B5)*(Lab!$C$10:Lab!$C$98=$C5),0),3+G$4)
Pour que la formule s'adapte aux autres lignes, il suffit de taper l'instruction suivante (pour l'exemple la formule sera insérée sur la plage G5:G100)
Range("G5:G100").Formula = "=INDEX(Lab!$A$10:$BZ$69,MATCH(1,(Lab!$A$10:Lab!$A$98=$A5)*(Lab!$B$10:Lab!$B$98=$B5)*(Lab!$C$10:Lab!$C$98=$C5),0),3+G$4)"
Il ne fait oublier de préciser la filiation complète de la plage (Classeur + feuille)
Partager