An Excel spreadsheet in the background with the Excel logo in front.
Agence web » Actualités du digital » Comment utiliser la fonction INDIRECT dans Excel

Comment utiliser la fonction INDIRECT dans Excel

Vous êtes peut-être habitué à utiliser des références de cellules dans Excel, mais saviez-vous que vous pouviez aller plus loin et créer vos propres références de cellules ? C'est là que la fonction INDIRECT s'avère utile.

À quoi sert la fonction INDIRECT ?

La fonction INDIRECT d'Excel transforme une chaîne de texte en référence. Cette fonction présente plusieurs avantages pratiques :

  • Il vous permet de créer des références dynamiques. Par exemple, vous pouvez modifier une référence à une cellule dans une formule sans modifier la formule elle-même.
  • La fonction INDIRECT est un excellent moyen de créer des liens entre des feuilles de calcul au sein d'un classeur.
  • Vous pouvez utiliser les informations que vous avez déjà dans votre feuille de calcul pour créer une référence.
  • La référence créée à l'aide de la fonction INDIRECT restera la même, même si la structure de votre feuille change.

La syntaxe INDIRECTE

Par défaut, les références dans Excel utilisent le style de référence A1, ce qui signifie qu'elles font d'abord référence à la colonne, puis au numéro de ligne. Cependant, la fonction INDIRECT vous permet de les inverser.

Cet ordre inversé est connu sous le nom de style de référence R1C1, où le « R » fait référence à une ligne et le « C » à une colonne. Pour cette raison, la fonction INDIRECT contient deux arguments. Voici la syntaxe :

=INDIRECT(x,y)

x est le texte de référence, et oui (facultatif) est le style de référence.

Plus précisément, x (le texte de référence) peut être une référence de style A1, une référence de style R1C1, un nom prédéfini ou une référence de cellule. Si x fait référence à un autre classeur, ce deuxième classeur doit être ouvert. Il convient également de noter que vous ne pouvez pas référencer un autre classeur si vous utilisez Excel pour le Web.

oui (le style de référence) est un argument facultatif. Si vous choisissez de ne pas inclure cet argument, Excel utilisera automatiquement la référence de style A1 par défaut, mais vous pouvez également saisir VRAI ici pour forcer Excel à utiliser ce style de référence. Dactylographie FAUX indiquera à Excel d'utiliser le style de référence R1C1.

Dans cet article, j'utiliserai des références de style A1 pour vous montrer comment fonctionne la fonction INDIRECT. Une fois que vous avez compris ses concepts, vous pouvez expérimenter en utilisant des références de style R1C1.

Le résultat de la fonction INDIRECT est une référence.

Choses à garder à l’esprit avant d’utiliser la fonction INDIRECT

Il y a quelques choses que vous devez savoir avant de commencer à travailler avec INDIRECT dans votre feuille de calcul :

  1. Il s'agit d'une fonction volatile, ce qui signifie qu'elle essaie constamment de se mettre à jour. L’utilisation de cette fonction dans une grande feuille de calcul pourrait la rendre lente, voire dysfonctionnelle.
  2. Pour utiliser pleinement la fonction INDIRECT, vous bénéficierez d'abord de savoir comment créer des références nommées dans Excel.
  3. L’opérateur esperluette (&) est un excellent moyen de créer une chaîne de texte pouvant être utilisée comme référence.

Comment utiliser la fonction INDIRECT

Afin que vous puissiez comprendre comment utiliser INDIRECT dans la pratique, voyons comment cela fonctionne dans sa forme la plus élémentaire.

Exemples de base

Dans cet exemple, en tapant

=INDIRECT(A1)

dans la cellule B2 transforme la cellule A1 en une référence à la cellule D1. C'est pourquoi le résultat est 5.

Dans cet exemple, en tapant

=SUM(INDIRECT(A2))

dans la cellule B2 transforme d'abord A2 en une référence de cellule, puis additionne les cellules de cette référence. En effet, la fonction INDIRECT est intégrée à la fonction SUM.

Voyons maintenant comment utiliser la fonction INDIRECT pour référencer une cellule dans une autre feuille. La cellule A1 de Sheet2 contient le nombre 100 et nous souhaitons créer une référence INDIRECT à cette cellule dans la feuille actuelle. Tout d'abord, nous devons taper Feuille2!A1 dans la cellule A3, puis nous devons la transformer en référence à l'aide de la fonction INDIRECT en tapant

=INDIRECT(A3)

dans la cellule B3.

Cependant, nous pouvons rendre cela beaucoup plus facile en utilisant une référence nommée. Par exemple, si nous devions renommer la cellule A1 de Sheet2 TOTALnous pourrions l'utiliser dans notre référence INDIRECT. Ceci est particulièrement pratique si vous créez une référence à une autre feuille, car cela vous évite d'avoir à vous souvenir du point d'exclamation dans la syntaxe. De plus, si le nom de votre feuille change, la référence INDIRECT ne s'adaptera pas à ce changement, donc l'utilisation d'une référence nommée est une alternative plus sûre et permanente.

Exemple concret 1

Maintenant que nous comprenons comment fonctionne INDIRECT, explorons comment nous pouvons l'utiliser pour faire fonctionner nos feuilles de calcul dans le monde réel.

Comme c’est souvent le cas dans Excel, il existe plusieurs façons d’obtenir le même résultat. Par exemple, vous pouvez inclure la fonction TAKE pour rendre le processus suivant encore plus dynamique. Cependant, notre objectif ici est de donner un exemple d'utilisation de la fonction INDIRECT, afin que vous puissiez ensuite l'utiliser à votre manière.

Ici, nous suivons le nombre de buts marqués par une équipe de football à chaque match et nous souhaitons calculer la moyenne des trois matchs précédents.

Tout d’abord, nous utiliserons la fonction COUNT pour déterminer combien de matchs l’équipe a joués jusqu’à présent. Dactylographie

=COUNT(B:B)

dans la cellule E1 comptera le nombre total de cellules de la colonne B contenant des nombres, nous indiquant ainsi combien de parties ont été jouées.

Nous sommes maintenant prêts à utiliser la fonction INDIRECT pour transformer les données de la cellule E1 en référence. À ce stade, notre objectif est de trouver la moyenne des valeurs des cellules B6 à B8. Voici comment la fonction INDIRECT nous aidera à y parvenir. Commencez par taper

=AVERAGE(INDIRECT

dans la cellule E2, car nous disons à Excel que nous voulons finalement trouver une moyenne, et nous utilisons également la fonction INDIRECT pour indiquer à Excel où chercher pour calculer cette moyenne.

La première cellule que nous référencerons dans notre calcul MOYENNE est B8, nous ajouterons donc

=AVERAGE(INDIRECT("B"&E1)

à notre formule. Remarquez comment nous avons utilisé des guillemets autour de la référence de colonne, car nous utilisons ce texte pour créer une référence de cellule.

La cellule suivante que nous référencerons dans notre calcul MOYENNE est B7, qui est une cellule au-dessus de B8. Donc, en ajoutant

=AVERAGE(INDIRECT("B"&E1),INDIRECT("B"&E1-1)

à notre formule signifie qu'Excel créera une référence de cellule qui commence dans la colonne B, puis soustrait 1 à la valeur de E1.

Enfin, nous souhaitons référencer la cellule B6, qui se trouve à deux cellules au-dessus de B8 dans notre calcul MOYENNE, puis ajouter la parenthèse fermante :

=AVERAGE(INDIRECT("B"&E1),INDIRECT("B"&E1-1),INDIRECT("B"&E1-2))

Cela calcule correctement la moyenne de 3, 1 et 1, qui correspond au nombre total de buts marqués au cours des trois derniers matchs.

Désormais, lorsque nous ajoutons plus de données dans la colonne B, la valeur dans la cellule E1 augmentera, car la fonction COUNT reconnaît qu'il y a plus de valeurs dans la colonne B, et les références INDIRECTES seront mises à jour en conséquence pour toujours capturer les trois dernières valeurs de notre MOYENNE. formule. Tout cela se produit sans avoir à modifier la formule que nous avons tapée dans la cellule E2.

Exemple concret 2

Regardons un autre exemple. Cette fois, nous utiliserons des références nommées afin de pouvoir utiliser INDIRECT avec la fonction RECHERCHEV d'Excel.

Nous voulons qu'Excel nous dise combien d'argent chacune des quatre personnes a gagné au cours de la semaine 1 ou de la semaine 2, avec la possibilité de modifier ce numéro de semaine si nécessaire.

Pour commencer, nous devons nommer les cellules B1 à C5 « semaine_1 » et les cellules B7 à B11 « semaine_2 ». Ensuite, dans la cellule G2, nous taperons

=VLOOKUP(E2,INDIRECT("week_"&F2),2,0)

car nous voulons qu'Excel recherche la valeur de Tom dans la plage que nous avons nommée « semaine_1 » et renvoie la valeur correspondante dans la deuxième colonne de cette plage comme correspondance exacte.

Nous pouvons ensuite utiliser le handle de remplissage pour compléter les données des trois autres personnes, sachant que les références que nous avons créées sont à la fois relatives à leurs lignes respectives et également sécurisées grâce à notre utilisation de références nommées.

Ensuite, toute modification des valeurs des colonnes C ou F s’appliquerait automatiquement à la formule que nous venons d’écrire.


Pour terminer le processus visant à rendre votre feuille de calcul entièrement dynamique et ordonnée, vous pouvez ajouter des menus déroulants à l'aide de l'outil de validation des données d'Excel. Dans l'exemple ci-dessus, vous pourriez rendre les noms des individus accessibles via un menu déroulant, de sorte que la table de recherche n'occupe qu'une seule ligne.

★★★★★