INDEX
La fonction INDEX renvoie la valeur de la cellule située à l’intersection entre le rang et la colonne indiqués dans une collection de cellules ou à partir d’un tableau renvoyé par une fonction de tableau.
INDEX(intervalle; index-rang; index-colonne; index-zone)
plage : Une collection de cellules. intervalle est soit une collection unique, soit plusieurs collections, chacune étant un intervalle unique de cellules. Si plusieurs collections sont indiquées, elles sont séparées par des points virgules et entourées d’un ensemble supplémentaire de parenthèses. Par exemple, INDEX((B1:B5; C10:C12)). Les cellules référencées par intervalle peuvent contenir des valeurs quelconques.
index-rang : Une valeur numérique représentant le numéro de rang de la valeur à renvoyer. index-rang doit être supérieur ou égal à 0, et inférieur ou égal au nombre de rangs présents dans intervalle. Si index-rang est égal à 0, INDEX renvoie le tableau de valeurs pour toute la colonne index-colonne, qui doit être supérieure à 0 et inférieure ou égale au nombre de colonnes de l’intervalle.
index-colonne : Une valeur numérique facultative représentant le numéro de colonne de la valeur à renvoyer. index-colonne doit être supérieur ou égal à 0, et inférieur ou égal au nombre de colonnes présentes dans intervalle. Si index-colonne est égal à 0, INDEX renvoie le tableau de valeurs pour tout le rang index-rang, qui doit être supérieur à 0 et inférieur ou égal au nombre de rangs de l’intervalle.
index-zone : Une valeur numérique facultative représentant le numéro de zone de la valeur à renvoyer. index-zone doit être supérieur ou égal à 1, et inférieur ou égal au nombre de zones présentes dans intervalle. En cas d’omission de index-zone, la valeur par défaut est 1.
Remarques
INDEX peut renvoyer la valeur à l’intersection indiquée d’une collection de valeurs à deux dimensions. Par exemple, supposons que les cellules B1:D8 contiennent les valeurs.
=INDEX(B1:D8; 2; 3) renvoie la valeur qui se trouve à l’intersection du second rang et de la troisième colonne (la valeur de la cellule D3).
Il est possible de préciser plusieurs intervalles en entourant les intervalles de parenthèses supplémentaires. Exemples :
=INDEX((B2:D5; B7:D10); 2; 3; 2) renvoie la valeur qui se trouve à l’intersection du deuxième rang et de la troisième colonne de la deuxième zone (la valeur de la cellule D8).
INDEX peut renvoyer un tableau à un rang ou à une colonne pour une autre fonction. Dans cette forme, soit index-rang soit index-colonne est obligatoire, mais l’autre argument peut être omis. Exemples :
=SOMME(INDEX(B2:D5; ; 3)) renvoie la somme des valeurs de la troisième colonne (cellules D2 à D5).
=MOYENNE(INDEX(B2:D5; 2)) renvoie la moyenne des valeurs du second rang (cellules B3 à D3).
INDEX peut renvoyer (ou « lire ») la valeur d’un tableau renvoyé par une fonction de tableau. La fonction FRÉQUENCE renvoie un tableau de valeurs s’appuyant sur des intervalles précisés.
=INDEX(FRÉQUENCE($A$1:$F$5; $B$8:$E$8); 1) renvoie la première valeur du tableau indiquée par la fonction FRÉQUENCE.
De même =INDEX(FRÉQUENCE($A$1:$F$5; $B$8:$E$8); 5) renvoie la cinquième valeur du tableau.
L’emplacement dans le tableau est précisé en indiquant le nombre de rangs vers le bas et le nombre de colonnes vers la droite par rapport à la cellule située dans le coin supérieur gauche du tableau.
Sauf quand INDEX est indiqué comme illustré dans le troisième cas ci-dessus, index-rang ne peut pas être omis. Si index-colonne est omis, la valeur supposée par défaut correspond à 1.
Exemples |
---|
Prenons le tableau suivant : |
A | B | C | D | |
---|---|---|---|---|
1 | 1 | 11 | 21 | |
2 | 2 | 12 | 22 | |
3 | 3 | 13 | 23 | |
4 | 4 | 14 | 24 | |
5 | a | b | c | |
6 | j | e | f | |
7 | g | h | i | |
8 | j | k | l |
=INDEX(B1:D4; 2; 3) renvoie 22, la valeur du second rang (index-rang est 2) et de la troisième colonne (index-colonne est 3) de la collection indiquée (intervalle est B1:D4, donc la cellule D2 contient le résultat). =INDEX((B1:D4; B5:D8); 2; 3; 2) renvoie « f », la valeur du second rang (index-rang est 2) et de la troisième colonne (index-colonne est 3) de la seconde zone (index-zone est 2) qui est la cellule D6. =SOMME(INDEX(B1:D4; ; 3)) renvoie 90, la somme des valeurs de la troisième colonne (cellules D1 à D4). =MOYENNE(INDEX(B1:D4; 2)) renvoie 12, la moyenne des valeurs du second rang (cellules B2 à D2). |