#SPILL klaidos grąžinamos, kai formulė pateikia kelis rezultatus, o "Excel" negali grąžinti rezultatų į tinklelį. Daugiau informacijos apie šiuos klaidų tipus žr. šiose žinyno temose:
Ši klaida įvyksta, kai sulietos masyvo formulės išsiplėsti diapazonas nėra tuščias.
Pasirinkite formulę, kad būtų rodoma brūkšninė kraštinė, nurodanti numatomą išsiliejimo diapazoną. Pasirinkus formulę, bus rodomas klaidos tikrinimo įspėjimas.
Pasirinkite perspėjimo apie klaidą tikrinimą ir pasirinkite parinktį Pasirinkti obstrukcines ląsteles , kad iš karto pereitumėte į obstrukcinę (-es) langelį (-ius). Tada klaidą galite pašalinti panaikindami arba perkeldami užstojančio langelio įrašą. Išvalius kliūtis, masyvo formulė išsiplės taip, kaip numatyta.
"Excel" nepavyko nustatyti sulieto masyvo dydžio, nes jis yra kintamas ir keičia dydį tarp skaičiavimo perėjimų. Pavyzdžiui, ši formulė suaktyvins šią #SPILL! Klaida:
=SEQUENCE(RANDBETWEEN(1,1000))
Dinaminio masyvo dydžio keitimas gali sukelti papildomų skaičiavimo perėjimų, kad būtų užtikrinta, kad skaičiuoklė yra visiškai apskaičiuota. Jei masyvo dydis ir toliau keisis šių papildomų perėjimų metu ir ne stabilizuosis, "Excel" išspręs dinaminį masyvą kaip #SPILL!.
Ši klaidos reikšmė paprastai susieta su funkcijų RAND, RANDARRAY ir RANDBETWEEN naudojimu. Kitos kintamos funkcijos, pvz., OFFSET, INDIRECT ir TODAY , nepateikia skirtingų reikšmių kiekviename skaičiavimo pasekme.
Pavyzdžiui, kai įdedama į langelį E2, kaip parodyta toliau pateiktame pavyzdyje, formulė =VLOOKUP(A:A,A:C,2,FALSE) anksčiau perž velgtų TIK ID langelyje A2. Tačiau dinaminiame masyve "Excel" formulė sukels #SPILL! nes "Excel" ieškos viso stulpelio, pateiks 1 048 576 rezultatus ir pasieks "Excel" tinklelio pabaigą.
Šią problemą galima išspręsti trimis paprastais būdais:
# |
Požiūris |
Formulė |
---|---|---|
1 |
Nurodykite tik jus dominamas peržvalgos reikšmes. Šis formulės stilius pateiks dinaminį masyvą, bet neveiks su "Excel" lentelėmis.
|
=VLOOKUP(A2:A7,A:C,2,FALSE) |
2 |
Nurodykite tik toje pačioje eilutėje esančią reikšmę, tada nukopijuokite formulę žemyn. Šis tradicinis formulės stilius veikia lentelėse, tačiau nepateikia dinaminio masyvo.
|
=VLOOKUP(A2,A:C,2,FALSE) |
3 |
Prašykite, kad "Excel" atliktų numanomą sankirtą naudodama operatorių @, tada nukopijuokite formulę žemyn. Šis formulės stilius veikia lentelėse, bet nepateikiadinaminio masyvo.
|
=VLOOKUP(@A:A,A:C,2,FALSE) |
" Excel" lentelėse nepalaikomos sulietos masyvo formulės. Pabandykite perkelti formulę iš lentelės arba konvertuoti lentelę į diapazoną (pasirinkite Lentelės dizainas > Įrankiai > Konvertuoti į diapazoną).
Dėl užpiltos masyvo formulės, kurią bandote įvesti, "Excel" pritrūko atminties. Bandykite nurodyti mažesnį masyvą arba diapazoną.
Sulietų masyvo formulių negalima išlieti į sulietus langelius. Panaikinkite atitinkamų langelių suliejimą arba perkelkite formulę į kitą diapazoną, kuris nesusikerta su sulietais langeliais.
Pasirinkite formulę, kad būtų rodoma brūkšninė kraštinė, nurodanti numatomą išsiliejimo diapazoną. Pasirinkus formulę, bus rodomas klaidos tikrinimo įspėjimas.
Galite pasirinkti perspėjimą dėl klaidų tikrinimo ir pasirinkti parinktį Pasirinkti obstrukcines ląsteles , kad iš karto pereitumėte į obstrukcinę (-es) kamerą (-es). Išvalius sulietus langelius, masyvo formulė išsiplės taip, kaip numatyta.
"Excel" neatpažįsta arba negali suderinti šios klaidos priežasties. Įsitikinkite, kad formulėje yra visi būtini scenarijaus argumentai.
Reikia daugiau pagalbos?
Taip pat žr.
Visada galite paklausti „Excel“ technologijų bendruomenės specialisto arba gauti palaikymo bendruomenėse.