Exceller

Fonction Excel INDIRECT

Excel Indirect Function

Fonction Excel INDIRECTRésumé

La fonction Excel INDIRECT renvoie une référence valide à partir d'une chaîne de texte donnée. INDIRECT est utile lorsque vous souhaitez convertir une valeur de texte en une référence de cellule valide.

Objectif Créer une référence à partir du texte Valeur renvoyée Une référence de feuille de calcul valide. Syntaxe = INDIRECT (ref_text, [a1]) Arguments
  • ref_text - Une référence fournie sous forme de texte.
  • a1 - [facultatif] Un booléen pour indiquer une référence de style A1 ou R1C1. La valeur par défaut est TRUE = style A1.
Version Excel 2003 Notes d'utilisation

La fonction INDIRECT renvoie une référence valide à partir d'une chaîne de texte donnée. INDIRECT est utile lorsque vous souhaitez convertir une valeur de texte en une référence de cellule valide. Par exemple, pour créer une référence à la cellule A1 à partir du texte, vous pouvez utiliser INDIRECT comme ceci:



 
= INDIRECT ('A1') // returns reference to A1

L'objectif d'INDIRECT peut à première vue sembler déroutant (c'est-à-dire pourquoi utiliser du texte alors que vous pouvez simplement fournir une référence appropriée?), Mais il existe de nombreuses situations où la possibilité de créer une référence à partir d'un texte est utile, notamment:



  • Une formule qui a besoin d'un variable nom de la feuille
  • Une référence fixe qui ne changera pas même lorsque des lignes ou des colonnes sont supprimées
  • Création de tableaux numériques avec la fonction ROW dans des formules complexes

Remarque: INDIRECT est un fonction volatile et peuvent entraîner des problèmes de performances dans les feuilles de calcul volumineuses ou complexes.

calculer le temps entre les dates dans Excel

Nom de la feuille de calcul variable

Dans l'exemple ci-dessus, INDIRECT est configuré pour utiliser un nom de feuille variable comme celui-ci:



 
= INDIRECT (B6&'!A1') // sheet name in B6 is variable

La formule dans B6, copiée vers le bas, renvoie la valeur de la cellule A1 dans les 5 premières feuilles en utilisant les noms de feuille entrés dans la colonne B. En d'autres termes, lorsqu'un nom de feuille différent est entré dans la colonne B, un nouveau résultat est renvoyé. Avec la même approche, vous pouvez autoriser un utilisateur à sélectionner un nom de feuille avec un la liste déroulante , puis construisez une référence à la feuille sélectionnée avec INDIRECT.

Remarque: les noms de feuilles contenant de la ponctuation ou des espaces doivent être placés entre guillemets simples ('), comme expliqué dans cet exemple . Ce n'est pas spécifique à la fonction INDIRECT, il en va de même pour toutes les formules.

Référence fixe

La référence créée par INDIRECT ne changera pas même lorsque des cellules, des lignes ou des colonnes sont insérées ou supprimées. Par exemple, la formule ci-dessous fera toujours référence aux 100 premières lignes de la colonne A, même si les lignes de cette plage sont supprimées ou insérées:



filtre de rapport de tableau croisé dynamique supérieur à
 
= INDIRECT ('A1:A100') // will not change

Générer un tableau numérique

Une utilisation plus avancée d'INDIRECT consiste à créer un déployer avec le Fonction ROW comme ça:

 
 ROW ( INDIRECT ('1:10')) // create {12345678910}

Un cas d'utilisation est expliqué dans cette formule, qui additionne les n dernières valeurs d'une plage .

Vous pouvez également rencontrer cette idée dans des formules plus complexes qui doivent assembler un tableau numérique «à la volée». Un exemple est cette formule, conçue pour supprimer les caractères numériques d'une chaîne .

Remarques

  • Les références créées par INDIRECT sont évaluées en temps réel et le contenu de la référence est affiché.
  • Lorsque ref_text est une référence externe à un autre classeur, le classeur doit être ouvert.
  • a1 est facultatif. Lorsqu'il est omis, a1 est TRUE = référence de style A1.
  • Lorsque a1 est défini sur FALSE, INDIRECT créera une référence de style R1C1.
  • INDIRECT est un fonction volatile et peut entraîner des problèmes de performances.


^