Passer directement au contenu principal

Opérateur d’intersection implicite: @

L’opérateur d’intersection implicite a été introduit dans le cadre de la mise à niveau importante du langage de formule d’Excel pour prendre en charge les tableaux dynamiques. Les tableaux dynamiques apportent de nouvelles fonctionnalités de calcul et fonctionnalités significatives à Excel.

Langage de formule mis à niveau

Le langage de formule mis à niveau d’Excel est presque identique à l’ancien langage, excepté qu’il utilise l’opérateur @ pour indiquer l’endroit où une intersection implicite peut se produire, alors que l’ancien langage le faisait en silence. Par conséquent, il est possible que @ apparaisse dans des formules qui s’ouvrent dans un tableau dynamique Excel. Il est important de noter que vos formules continuent de fonctionner de la même manière que pour elles.  

Qu’est-ce qu’une intersection implicite?

La logique d’intersection implicite réduit de nombreux valeurs en une valeur unique. Excel s’est appliqué de façon à ce que la formule renvoie une valeur unique, car une cellule ne peut contenir qu’une seule valeur. Si votre formule renvoie une valeur unique, l’intersection implicite ne s’est produite qu’une seule fois. La logique fonctionne comme suit:

  • Si la valeur est un élément unique, renvoyez l’élément.

  • Si la valeur est une plage, renvoyer la valeur de la cellule sur la même ligne ou colonne que la formule.

  • Si la valeur est un tableau, sélectionnez la valeur supérieure gauche.

Lorsque vous venez de disposer de tableaux dynamiques, Excel ne limite plus le retour de valeurs uniques à partir de formules, de sorte que l’intersection implicite silencieuse n’est plus nécessaire. Dans le cas où une ancienne formule risque de déclencher une intersection implicite, le tableau dynamique activé d’Excel indique où il s’est produit avec le symbole @.  

Pourquoi le symbole @? 

Le symbole @ est déjà utilisé dans les références de table pour indiquer une intersection implicite. Prenez en considération la formule suivante dans une table = [@Column1]. Dans cet exemple, @ indique que la formule doit utiliser une intersection implicite pour récupérer la valeur sur la même ligne de [Colonne1].  

Pouvez-vous supprimer le @? 

C’est souvent. Tout dépend de la partie de la formule à droite du caractère @ renvoyé: 

  • S’il renvoie une valeur unique (le cas le plus courant), il n’y a aucune modification en supprimant le signe @.

  • S’il renvoie une plage ou une matrice, le fait de supprimer le @ entraînera son détournement vers les cellules voisines.

Si vous supprimez un @ ajouté automatiquement et rouvrez le classeur dans une version antérieure d’Excel, il s’affichera sous la forme d’uneformule de tableau héritée (encapsulée avec accolades {}), c’est fait pour vérifier que l’ancienne version ne déclenche pas d’intersection implicite.

Quand ajouter des formules @ à d’anciennes formules? 

En règle générale, les fonctions qui renvoient des plages ou des matrices à plusieurs cellules seront préfixées par @ si elles ont été créées dans une version antérieure d’Excel. Il est important de noter qu’il n’y a aucune modification quant à la façon dont votre formule se comporte, vous pouvez simplement voir l’intersection implicite précédemment invisible maintenant. Les fonctions courantes qui peuvent renvoyer des plages de cellules multiples incluent les fonctions INDEX, décalage et fonction définie par l’utilisateur.  Il s’agit d’une exception courante, si elles sont encapsulées dans une fonction qui accepte un tableau ou une plage (par exemple, SUM () ou AVERage ()). 

Pour plus d’informations, voir fonctions Excel qui renvoient des plages ou des matrices.

Exemples

Formule d’origine

Comme indiqué dans la matrice dynamique Excel 

Explication

= SOMME (A1: A10) 

= SOMME (A1: A10) 

Aucune modification-aucune intersection implicite ne peut se produire, car la fonction somme attend des plages ou des matrices. 

= A1 + a2 

= A1 + a2 

Aucune modification-aucune intersection implicite ne peut se produire. 

= A1: A10 

= @A1: A10 

Une intersection implicite se produira et Excel renverra la valeur associée à la ligne dans laquelle se trouve la formule.

= INDEX (A1: A10; B1) 

= @INDEX (A1: A10; B1) 

Une intersection implicite peut se produire. La fonction index peut renvoyer une matrice ou une plage lorsque le deuxième ou le troisième argument est 0.  

= DECALER (A1: A2; 1; 1) 

= @OFFSET (A1: A2; 1; 1) 

Une intersection implicite peut se produire. La fonction DECALER peut retourner une plage de plusieurs cellules. Lorsque c’est le cas, l’intersection implicite est déclenchée. 

= MYUDF () 

= @MYUDF () 

Une intersection implicite peut se produire. Les fonctions définies par l’utilisateur peuvent renvoyer des tableaux. Lorsque c’est le cas, la formule d’origine aurait déclenché une intersection implicite. 

Vous avez besoin d’une aide supplémentaire ?

Vous pouvez toujours consulter un expert de la communauté technique Excel, obtenir une assistance dans la communauté Answers ou suggérer une nouvelle fonctionnalité ou une amélioration sur le forum Excel User Voice.

Voir aussi

Fonction FILTRE

Fonction TABLEAU.ALEAT

Fonction SEQUENCE

Fonction TRI

Fonction TRIERPAR

Fonction UNIQUE

#SPILL ! erreurs dans Excel

Les tableaux dynamiques et le comportement de matrice dispersé

Remarque :  Cette page a été traduite automatiquement et peut donc contenir des erreurs grammaticales ou des imprécisions. Notre objectif est de faire en sorte que ce contenu vous soit utile. Pouvez vous nous dire si les informations vous ont été utiles ? Voici l’article en anglais pour référence.

Développez vos compétences dans Office
Découvrez des formations
Accédez aux nouvelles fonctionnalités en avant-première
Rejoignez le programme Office Insider

Ces informations vous ont-elles été utiles ?

Nous vous remercions pour vos commentaires.

Merci pour vos commentaires. Il serait vraisemblablement utile pour vous de contacter l’un de nos agents du support Office.

×