Bennu-mallin tehostaminen RandArraylla - Excel-vinkit

Sisällysluettelo

Viime viikolla Ignite-ohjelmassa Excel-tiimi esitteli dynaamiset taulukot. Tänään tarkastellaan tarkemmin RANDARRAY-toimintoa.

Äskettäin Excel Hash -peliin kirjoittaessani loin mallin, jolla laskettiin mahdollisuus, että maapallolla on uusi turistikohde, Bennun kraatteri vuoteen 2196 mennessä. Tämä malli suoritti 30 miljoonaa laskutoimitusta ja vaati 200 001 kaavaa sekä 100- rivin tietotaulukko. Tässä ovat 200 001 solussa käytetyt kaavat:

Tämä malli laskettiin 10-12 sekunnissa

Mallin yksinkertaistamiseksi käytä RANDARRAY (100000) RAND-toiminnon sijaan. Tämä saa kaavan laskemaan 100 000 kertaa.

  • Aloitat korvaamalla RAND (): lla RANDARRAY (100000) 100000 vastauksen tuottamiseksi:

    RANDARRAY(100000)

  • Lähetä RANDARRAY osoitteeseen NORM.INV laskeaksesi 100000 sijaintia

    NORM.INV(RANDARRAY(100000),$H$4,$H$5)

  • Lähetä NORM.INV VLOOKUPiin ja selvitä, vaikuttaako Bennu maapalloon:

    VLOOKUP(NORM.INV(RANDARRAY(100000),$H$4,$H$5),$N$23:$O$179,2,TRUE)

  • Ja lopuksi summa 100K tulokset

    =SUM(VLOOKUP(NORM.INV(_xlfn.RANDARRAY(100000),$H$4,$H$5),$N$23:$O$179,2,TRUE))

Lopullinen 100 000 kokeilun malli sisältyy yhteen kaavaan:

200 000 solua korvattu yhdellä kaavalla

Tiedoston koko kutistuu dramaattisesti: 3270979 tavusta 37723 tavuun. Uudelleenlaskeaika puolittuu. Katso uudelleenlaskennan ajat alla olevasta videosta.

Katso video

Lataa Excel-tiedosto

Excel-tiedoston lataaminen: virtaviivaistaminen-bennu-malli-kanssa-randarray.xlsm

Tästä lähtien vuoden 2018 loppuun asti teen uudet Excel Dynamic Arrays Straight To The Point -kirjani ilmaiseksi.

Päivän Excel-ajatus

Olen pyytänyt Excel Master -kaveriltani neuvoja Excelistä. Tämän päivän ajatus miettiä:

"Aloita taulukon nimi aina tbl: llä"

Dietmar Gieringer

Mielenkiintoisia artikkeleita...