Bonjour à tous,
oops1er a écrit :
A quoi servent ces 2 tirets ?
Ils servent à transformer un VRAI/FAUX en 1/0. Ceci afin que le SOMMEPROD puisse marcher.
En VBA, tu peux mettre ça :
.Range("D" & LR).Formula = _
"=IF(AND(SUMPRODUCT(--(Légende!R5C11:R9C11>=RC[-1])),SUMPRODUCT(--(Légende!R5C12:R9C12<=RC[-1]))),VLOOKUP(RC[-3],recherche,14,0),VLOOKUP(RC[-3],recherche,15,0))"
Pour obtenir cette formule, j'ai simplement utilisé l'enregistreur de macro.
Avec l'enregistreur de macro, tu enregistres les actions suivantes :
- Tu sélectionnes D2 par exemple
- Tu colles la formule d'Amadéus
- Tu valides
- T'arrêtes l'enregistreur de macro
- Et tu obtiens la formule magique !
L'avantage de cette formule par rapport à la tienne c'est que quelque soit la ligne où tu la mets, elle se calculera toujours à partir de la valeur se trouvant à la même ligne mais dans la colonne précédente. D'où le RC[-1].