Récemment, un client m’a demandé quelle formule utiliser dans Excel pour obtenir, en permanence, la valeur de la dernière cellule d’un tableau (comme celui sur l’image ci-bas). Ce tableau évoluait de jour en jour et il ne voulait pas utiliser la fonction recherchev (vlookup) car cela aurait exigé que l’on connaisse la date de la dernière mise à jour, ce qui n’était pas une option. Cet article a donc comme objectif de partager avec vous une fonction Excel imbriquée, qui permet de déterminer la valeur de la dernière cellule active d’un tableau de données.
Fonction imbriquée Indirect, Adresse (Address), Nb (Count) et Ligne (Row)
La solution que j’ai proposée à mon client est une fonction imbriquée. L’imbrication se fait à partir des fonctions Indirect, Adresse (Address), Nb (Count) et Ligne (Row), tel qu’illustré sur l’image ci-bas.
Décomposons cette fonction pour mieux la comprendre:
- Row() ou Ligne() indique le numéro de la ligne où l’on se situe, donc dans notre exemple, 4
- Count(C4:C40) ou Nb(C4:C40) renvoie le nombre de valeurs numériques entre les lignes 4 et 40 de la colonne C
- On suppose donc ici que le tableau n’aura pas plus que 36 lignes (40-4)
- Le nombre de valeurs numériques entre les lignes 4 et 40 de la colonne C est de 7
- Address(7+4,3) ou Adresse(7+4,3), donne l’adresse de la cellule à la ligne 11 et à la colonne C)
- Indirect(C11) nous revoie la valeur de la cellule C11, soit 21$
Alternative plus intéressante
Au lieu d’utiliser la fonction Count(C4:C40) ou Nb(C4:C40) et de devoir déterminer à l’avance à quelle ligne devrait se terminer la base de données, il peut être préférable d’utiliser la fonctionnalité Mettre sous forme de tableau (Format as table). Ainsi, la fonction Count (ou NB) s’ajustera en fonction de l’évolution du tableau. Pour ce faire, vous n’avez qu’à sélectionner les cellules C4 à C11 et la formule prendra en compte la colonne active Montant (voir image ci-dessous).