Operatorul de intersecție implicit: @

Se aplică la
Excel pentru Microsoft 365 Excel pentru Microsoft 365 pentru Mac Excel 2024 Excel 2021

Microsoft a introdus operatorul de intersecție implicit ca parte a unei îmbunătățiri substanțiale la limbajul de formule din Excel pentru a accepta matricele dinamice. Matricele dinamice aduc noi capacități de calcul și funcționalități semnificative pentru Excel.

Limba formulei s-a actualizat

Limbajul pentru formule actualizat din Excel este aproape identic cu limbajul vechi, cu excepția faptului că utilizează operatorul @ pentru a indica unde poate apărea intersecția implicită, în timp ce limba veche făcea acest lucru în mod silențios. Prin urmare, este posibil să observați că apar @ în unele formule atunci când le deschideți în matricea dinamică Excel. Formulele dvs. continuă să calculeze la fel ca întotdeauna.  

Ce este intersecția implicită?

Logica de intersecție implicită reduce multe valori la o singură valoare. Excel a făcut acest lucru pentru a forța o formulă să returneze o valoare unică, deoarece o celulă poate conține doar o singură valoare. Dacă formula returna o singură valoare, intersecția implicită nu făcea nimic (chiar dacă aceasta se făcea tehnic în fundal). Logica funcționează astfel:

  • Dacă valoarea este un singur element, returnați elementul.
  • Dacă valoarea este o zonă, returnați valoarea din celula de pe același rând sau aceeași coloană cu formula.
  • Dacă valoarea este o matrice, alegeți valoarea din stânga sus.

Odată cu apariția matricelor dinamice, Excel nu mai este limitat la returnarea valorilor unice din formule, deci intersecția implicită silențioasă nu mai este necesară. Acolo unde o formulă veche putea declanșa invizibil o intersecție implicită, matricea dinamică activată Excel afișează unde s-ar fi întâmplat cu @.  

De ce simbolul @?

Simbolul @ este utilizat deja în referințele de tabel pentru a indica intersecția implicită. Luați în considerare formula următoare într-un tabel =[@Column1]. @ indică faptul că formula utilizează intersecția implicită pentru a regăsi valoarea din același rând din [Coloana1].  

Puteți elimina simbolul @?

De multe ori puteți. Depinde de ceea ce returnează partea formulei din partea dreaptă a simbolului @:

  • Dacă returnează o valoare unică (cazul cel mai comun), nu se produce nicio modificare atunci când eliminați simbolul @.
  • Dacă returnează o zonă sau o matrice, prin eliminarea simbolului @ se va vărsa către celulele învecinate.

Dacă eliminați un @ adăugat automat și deschideți mai târziu registrul de lucru într-o versiune mai veche de Excel, acesta apare ca formulă matrice moștenită (încadrată cu acolade {}). Acest comportament asigură faptul că versiunea mai veche nu declanșează o intersecție implicită.

Când adăugăm @ la formulele vechi?

În general, funcțiile care returnează zone sau matrice cu mai multe celule au un prefix @ dacă le-ați creat într-o versiune mai veche de Excel. Nu există nicio modificare în modul în care se comportă formula: acum puteți vedea doar intersecția implicită care anterior era invizibilă. Printre funcțiile comune care returnează zone cu mai multe celule se numără INDEX, OFFSET și funcțiile definite de utilizator (UDF). O excepție obișnuită este dacă sunt încadrate într-o funcție care acceptă o matrice sau o zonă (de exemplu, SUM() sau AVERAGE()). 

Vedeți funcțiile Excel care returnează zone sau matrice pentru mai multe detalii.

Exemple

Formulă originală Așa cum se vede în matrice dinamică Excel Explicație
=SUM(A1:A10) =SUM(A1:A10) Nicio modificare - Nu poate apărea nicio intersecție implicită, deoarece funcția SUM așteaptă zone sau matrice.
=A1+A2 =A1+A2 Nicio modificare - nu poate apărea nicio intersecție implicită.
=A1:A10 =@A1:A10 Are loc o intersecție implicită și Excel returnează valoarea asociată cu rândul în care se află formula.
=INDEX(A1:A10;B1) =@INDEX(A1:A10;B1) Poate apărea o intersecție implicită. Funcția INDEX poate returna o matrice sau o zonă atunci când al doilea sau al treilea argument al său este 0.
=OFFSET(A1:A2;1;1) =@OFFSET(A1:A2;1;1) Poate apărea o intersecție implicită. Funcția OFFSET poate returna o zonă cu mai multe celule . Când se întâmplă acest lucru, declanșează o intersecție implicită.
=MYUDF() =@MYUDF() Poate apărea o intersecție implicită. Creați funcții particularizate în Excel poate returna matrice. Când se întâmplă acest lucru, formula originală declanșează o intersecție implicită.

Utilizarea operatorului @ în formule noi

Dacă creați sau editați o formulă în Excel cu matrice dinamică care conține operatorul @, aceasta poate apărea ca _xlfn. SINGLE() în matricea predinamică Excel.

Acest comportament apare atunci când comiteți o formulă mixtă. O formulă mixtă este o formulă care se bazează atât pe calculul matricei, cât și pe intersecția implicită. Matrice predinamică Excel nu acceptă această combinație. Matrice predinamică Excel acceptă doar formule care fac i) intersecție implicită sau ii) calcul matrice în întregime.

Când matricea dinamică a activat, Excel detectează crearea unei formule mixte, propune o variație a formulei care utilizează intersecția implicită pe tot parcursul. De exemplu, dacă introduceți =A1:A10+@A1:A10, , veți vedea caseta de dialog următoare:

Captură de ecran care afișează o casetă de dialog care vă întreabă dacă preferați fromula =@A1:A10 + @A1:A10 în schimb.

Dacă alegeți să respingeți formula propusă de caseta de dialog, formula =A1:A10+@A1:A10 mixtă este validată. Dacă deschideți mai târziu această formulă în Excel pre-dinamic, aceasta apare ca =A1:A10+_xlfn.SINGLE(A1:A10) și operatorii @ din formula mixtă apărând ca _xlfn.SINGLE(). Când matricea pre-dinamică Excel evaluează această formulă, aceasta returnează un #NAME! . 

Aveți nevoie de ajutor suplimentar?

Puteți oricând să întrebați un expert de la Excel Tech Community sau să obțineți asistență de la Comunități.

Consultați și

Funcția FILTER

Funcția RANDARRAY

Funcția SEQUENCE

Funcția SORT

Funcția SORTBY

Funcția UNIQUE

#VĂRSARE! din Excel

Matricele dinamice și comportamentul matricelor vărsate