Netiesioginis sankirtos operatorius buvo pristatytas kaip esminis "Excel" formulių kalbos atnaujinimas, kad būtų palaikomi dinaminiai masyvai. Dinaminiai masyvai suteikia programai "Excel" svarbių naujų skaičiavimo galimybių ir funkcijų.
Atnaujinta formulės kalba
"Excel" atnaujintos formulės kalba yra beveik identiška senajai kalbai, išskyrus tai, kad ji naudoja @ operatorių, kad nurodytų, kur gali įvykti netiesioginė sankirta, o senoji kalba tai darė tyliai. Todėl galite pastebėti @'s appear in some formulas when opened in dynamic array Excel. It', kad svarbu atkreipti dėmesį, kad formulės ir toliau skaičiuos taip pat, kaip iki šiol.
Kas yra numanoma sankirta?
Netiesioginės sankirtos logika sumažina daugelį reikšmių iki vienos reikšmės. "Excel" tai padarė, kad priverstų formulę grąžinti vieną reikšmę, nes langelyje galėjo būti tik viena reikšmė. Jei formulė grąžindavo vieną reikšmę, numanoma sankirta nieko nedarydavo (nors techniškai tai buvo daroma fone). Logika veikia taip:
- Jei reikšmė yra vienas elementas, grąžinkite elementą.
- Jei reikšmė yra diapazonas, tada grąžinkite reikšmę iš langelio, esančio toje pačioje eilutėje arba stulpelyje kaip formulė.
- Jei reikšmė yra masyvas, pasirinkite viršuje kairėje esančią reikšmę.
Atsiradus dinaminiams masyvams, "Excel" nebeapsiriboja pavienių reikšmių pateikimu iš formulių, todėl tyli numanoma sankirta nebereikalinga. Jei sena formulė gali nepastebimai sukelti netiesioginę sankirtą, dinaminio masyvo įgalintas "Excel" rodo, kur ji būtų įvykusi su @.
Kodėl @ simbolis?
Simbolis @ jau naudojamas lentelės nuorodose netiesioginei sankirtai nurodyti. Apsvarstykite tokią formulę lentelėje =[@Column1]. Čia @ nurodo, kad formulė turėtų naudoti netiesioginę sankirtą, kad gautų reikšmę toje pačioje eilutėje iš [Stulpelis1].
Ar galite pašalinti @?
Dažnai galite. Tai priklauso nuo to, ką grąžina formulės dalis, esanti @ dešinėje:
- Jei ji pateikia vieną reikšmę (dažniausias atvejis), pašalinus @ nebus jokio pakeitimo.
- Jei jis pateikia diapazoną arba masyvą, pašalinus @, jis bus išplėstas į gretimus langelius.
Jei pašalinate automatiškai pridėtą @ ir vėliau atidarote darbaknygę senesne "Excel" versija, ji bus rodoma kaip senstelėjusi masyvo formulė (apgaubta riestiniais skliaustais {}), tai daroma siekiant užtikrinti, kad senesnė versija nesuaktyvintų netiesioginės sankirtos.
Kada pridėti @ prie senų formulių?
Paprastai kalbant, funkcijos, kurios pateikia kelių langelių diapazonus ar masyvus, bus su priešdėliu @, jei jos buvo sukurtos naudojant senesnę "Excel" versiją. Svarbu atkreipti dėmesį, kad formulės veikimas nepasikeitė – tiesiog dabar galite pamatyti anksčiau nematomą numanomą sankirtą. Įprastos funkcijos, kurios gali pateikti kelių langelių diapazonus, yra INDEX, OFFSET ir vartotojo apibrėžtos funkcijos (UDF). Dažna išimtis yra tada, kai jie suvyniojami į funkciją, kuri priima masyvą arba diapazoną (pvz., SUM() arba AVERAGE()).
Daugiau informacijos ieškokite "Excel" funkcijų, kurios pateikia diapazonus ar masyvus .
Pavyzdžiai
| Pradinė formulė | Kaip matoma dinaminiame masyve "Excel" | Paaiškinimas |
|---|---|---|
| =SUM(A1:A10) | =SUM(A1:A10) | Jokių pakeitimų – netiesioginės sankirtos negalėjo įvykti, nes funkcija SUM tikisi diapazonų arba masyvų. |
| =A1+A2 | =A1+A2 | Jokių pakeitimų – netiesioginės sankirtos negalėjo įvykti. |
| =A1:A10 | =@A1:A10 | Įvyks netiesioginė sankirta ir "Excel" pateiks reikšmę, susietą su eilute, kurioje yra formulė. |
| =INDEX(A1:A10;B1) | =@INDEX(A1:A10;B1) | Gali įvykti netiesioginė sankirta. Funkcija INDEX gali grąžinti masyvą arba diapazoną, kai jos antrasis arba trečiasis argumentas yra lygus 0. |
| =OFFSET(A1:A2;1;1) | =@OFFSET(A1:A2;1;1) | Gali įvykti netiesioginė sankirta. Funkcija OFFSET gali grąžinti kelių langelių diapazoną. Kai tai įvyks, suveiks numanoma sankirta. |
| =MYUDF() | =@MYUDF() | Gali įvykti netiesioginė sankirta. Vartotojo apibrėžtos funkcijos gali grąžinti masyvus. Kai jie tai padarys, pradinė formulė būtų suaktyvinusi numanomą sankirtą. |
Operatoriaus @ naudojimas naujose formulėse
Jei kuriate arba redaguojate formulę dinaminiame masyve "Excel", kurioje yra operatorius @, ji gali būti rodoma kaip _xlfn. SINGLE() ikidinaminiame masyve Excel.
Taip nutinka, kai taikote mišrią formulę. Mišri formulė yra formulė, kuri remiasi masyvo skaičiavimu ir netiesiogine sankirta. To nepalaikė ikidinaminis masyvas "Excel". Priešdinaminis masyvas palaikė tik tas formules, kurios atliko i) numanomą sankirtą arba ii) masyvo skaičiavimą.
Kai dinaminis masyvas įgalintas, "Excel" aptinka "mišrios formulės" sukūrimą, ji pasiūlys formulės variantą, numanomą susikirtimą. Pavyzdžiui, jei įvesite =A1:A10+@A1:A10,, matysite šį dialogo langą:
Jei pasirinksite atmesti dialogo lange siūlomą formulę, bus taikoma mišri formulė =A1:A10+@A1:A10 . Jei vėliau atidarysite šią formulę ikidinaminiame masyve "Excel", ji bus rodoma kaip =A1:A10+_xlfn.SINGLE(A1:A10) @ mišrioje formulėje ir rodoma kaip _xlfn.SINGLE(). Kai šią formulę vertina ikidinaminis masyvas "Excel", ji pateiks #NAME! klaidos reikšmę.
Reikia daugiau pagalbos?
Visada galite kreiptis eksperto į "Excel" technologijų bendruomenę arba gauti pagalbos bendruomenėse.