Netiešais krustošanās operators tika ieviests kā daļa no būtiskas jaunināšanas uz Excel formulas valodu, lai atbalstītu dinamiskos masīvus. Dinamiskie masīvi nodrošina būtisku jaunu aprēķinu iespēju un funkcionalitāti, Excel.
Jaunināta formulu valoda
Excel jauninātā formulas valoda ir gandrīz identiska vecajai valodai, tikai ar to, ka tiek izmantots operators @, lai norādītu, kur var rasties netiešā krustošanās, savukārt vecā valoda to paveica "klusi". Līdz ar to, iespējams, pamanīsit, ka, atverot dinamiskajā masīva masīvā, dažas formulas Excel. Ņemiet vērā, ka formulas turpinās aprēķināt tāpat kā parasti.
Kas ir netieša krustošanās?
Netieša krustošanās loģika samazina daudzas vērtības līdz vienai vērtībai. Excel to paveica, lai formula atgrieztu vienu vērtību, jo šūnā varētu būt tikai viena vērtība. Ja formula atgrieza vienu vērtību, netiešā krustošanās nenokavēja (pat ja tā tehniski tika veikta fona režīmā). Loģika darbojas šādi:
-
Ja vērtība ir viens vienums, atgrieziet vienumu.
-
Ja vērtība ir diapazons, tiek atgriezta šūnas vērtība tajā pašā rindā vai kolonnā, kurā atrodas formula.
-
Ja vērtība ir masīvs, izvēlieties augšējo kreiso vērtību.
Līdz ar dinamisko masīvu Excel vairs nav nepieciešams atgriezt tikai atsevišķas vērtības no formulām, tāpēc klusā netiešā krustošanās vairs nav nepieciešama. Ja vecā formula var nemanāmi izraisīt netaisnīgu krustošanos, iespējota dinamiska masīva Excel norāda, kur tā būtu noticis ar @.
Kāpēc simbols @
Simbols @ tabulu atsaucēs jau tiek izmantots, lai norādītu netīku krustošanos. Tabulā =[@Column1] ņemiet vērā šādu formulu. Šeit @ norāda, ka formulai jāizmanto netieša krustošanās, lai izgūtu vērtību tajā pašā rindā no [Kolonna1].
Vai varat noņemt @?
Bieži vien varat. Tas ir atkarīgs no formulas daļas pa labi no vērtības @ atgriež:
-
Ja tā atgriež vienu vērtību (visbiežāk sastopamā lieta), noņemot burtu @, nemainīsies.
-
Ja tas atgriež diapazonu vai masīvu, noņemot šūnu @, tas izšļakstīsblakus šūnās.
Ja noņemat automātiski pievienoto @ un vēlāk atverat darbgrāmatu vecākā Excel versijā, tā tiek parādīta kā mantota masīva formula (aplauzta ar figūriekavām {}), tas tiek darīts, lai nodrošinātu, ka vecākā versija neaktivizēs netīšo krustošanos.
Kad mēs pievienosim šo @ vecajām formulām?
Vispārīgi runājot, funkcijas, kas atgriež vairākšūnu diapazonus vai masīvus, tiks prefikss @, ja tās ir autorētas vecākā programmas Excel. Ņemiet vērā, ka nav nekādu izmaiņu attiecībā uz jūsu formulas darbību — tagad jūs varat vienkārši redzēt iepriekš neredzamo netiešās krustošanās veidu. Bieži lietotās funkcijas, kas var atgriezt vairākšūnu diapazonus, ietver funkcijas INDEX, OFFSET un lietotāja definētās funkcijas (User Defined Functions — UDF). Izplatīts izņēmums ir tas, ka tie tiek aplauzti funkcijā, kas pieņem masīvu vai diapazonu (piemēram, SUM() vai AVERAGE()).
Papildinformāciju Excel rakstā funkciju, kas atgriež diapazonus vai masīvus.
Piemēri
Sākotnējā formula |
Kā redzams dinamisko masīvu Excel |
Skaidrojums |
---|---|---|
=SUM(A1:A10) |
=SUM(A1:A10) |
Nav nekādu izmaiņu — netiešā krustošanās nevar notikt, jo funkcija SUM sagaida diapazonus vai masīvus. |
=A1+A2 |
=A1+A2 |
Bez izmaiņām — netiešā krustošanās nevar notikt. |
=A1:A10 |
=@A1:A10 |
Tiks veikta netieša krustošanās, un Excel atgriezīs vērtību, kas saistīta ar rindu, kurā atrodas formula. |
=INDEX(A1:A10,B1) |
=@INDEX(A1:A10;B1) |
Iespējama netieša krustošanās. Funkcija INDEX var atgriezt masīvu vai diapazonu, ja tā otrais vai trešais arguments ir 0. |
=OFFSET(A1:A2;1;1) |
=@OFFSET(A1:A2;1;1) |
Iespējama netieša krustošanās. Funkcija OFFSET var atgriezt vairākšūnu diapazonu. Ja tā ir, tiks izraisīta netiešā krustošanās. |
=MYUDF() |
=@MYUDF() |
Iespējama netieša krustošanās. Lietotāja definētās funkcijas var atgriezt masīvus. To izdarot, sākotnējā formula izraisītu netīšo krustošanos. |
Operatora @ izmantošana jaunās formulās
Ja rediģējat formulu dinamiskajā masīvā, Excel kurā iekļauts operators @, tā var tikt parādīta kā _xlfn. SINGLE() pirms dinamisko masīvu Excel.
Tā notiek, ja izpildās jaukta formula. Jaukta formula ir formula, kas paļaujas uz masīva aprēķinu un netīšo krustošanos, šī formula netika atbalstīta pirms dinamisku masīvu Excel. Pre-dynamic array supported formulas that did i) implicit intersection or ii) array calculation throughout.
Ja ir iespējots dinamiskais Excel nosaka "jauktas formulas" izveidi, tiek piedāvāts variants formulai, kura netieši krustošanos visā pasaulē. Piemēram, ja ievadāt =A1:A10+@A1:A10, tiks parādīts šāds dialoglodziņš:
Ja izvēlaties noraidīt dialoglodziņā piedāvāto formulu, tiek nodota jauktā formula =A1:A10+@A1:A10 . Ja vēlāk šo formulu atvērsiet pirms dinamisku masīvu Excel, tā tiks parādīta kā =A1:A10+_xlfn. SINGLE(A1:A10) jauktajā formulā, kas redzama kā _xlfn. SINGLE(). Ja šo formulu novērtē iepriekš dinamisks masīvs Excel tā atgriež #NAME! kļūdas vērtību.
Vai nepieciešama papildu palīdzība?
Vienmēr varat pajautāt speciālistam Excel tech kopienā vai saņemt atbalstu kopienās.