A múlt héten az Ignite-ben az Excel csapata dinamikus tömböket mutatott be. Ma közelebbről megnézzük a RANDARRAY funkciót.
Nemrégiben az Excel Hash játékba való belépésem során készítettem egy modellt annak kiszámításához, hogy a Föld új turistalátványosságot, a Bennu-krátert kap 2196-ig. Ez a modell harmincmillió számítást végzett, és 200 001 képletet igényelt egy 100- sor adattáblázat. Itt vannak a 200 001 cellában használt képletek:

A modell leegyszerűsítése érdekében a RANDARRAY (100000) funkciót használja a RAND funkció helyett. Ez a képletet 100 000-szeresére számítja.
-
Először a RAND () helyett a RANDARRAY (100000) helyett 100 000 választ generál:
RANDARRAY(100000)
-
Küldje el a RANDARRAY-ot a NORM.INV címre 100 000 hely kiszámításához
NORM.INV(RANDARRAY(100000),$H$4,$H$5)
-
Küldje el a NORM.INV fájlt a VLOOKUP fájlba annak megállapításához, hogy a Bennu hatással van-e a Földre:
VLOOKUP(NORM.INV(RANDARRAY(100000),$H$4,$H$5),$N$23:$O$179,2,TRUE)
-
És végül összegezzük a 100 ezer eredményt
=SUM(VLOOKUP(NORM.INV(_xlfn.RANDARRAY(100000),$H$4,$H$5),$N$23:$O$179,2,TRUE))
A 100 000 próba lefuttatásának végső modelljét egyetlen képlet tartalmazza:

A fájlméret drámai módon csökken: 3 270 979 bájtról 37 723 bájtra. Az újraszámolási idő felére csökken. Nézze meg az újraszámolási időket az alábbi videóban.
Videót nézni
Töltse le az Excel fájlt
Az excel fájl letöltése: a-bennünk-modell egyszerűsítése a randarray.xlsm-sel
Mostantól 2018 végéig ingyenesvé teszem az új Excel Dynamic Arrays Straight To The Point e-könyvet.
Excel gondolata a napnak
Az Excel Master barátaimtól kértem tanácsokat az Excel-mel kapcsolatban. Mai gondolat, hogy elgondolkodjak:
"A táblázat nevét mindig 'tbl' -vel kezdje
Dietmar Gieringer