+420 608 701 500 poptavka@dobrekurzy.cz

21. 03. 2020 | MS Excel

Nová funkce Excelu pro generování náhodných čísel RANDARRAY

 

Na všech kurzech Excelu vysvětluji klientů, že skoro všechno v Excelu je číslo. Datum je číslo (1. 1. 1900 = 1 a 21. 3. 2020 je jen formátem upravené číslo 43911. Jedna hodina od povídá například zlomku 1/24 (den má 24 hodin) a tak dále. Chcete-li odečíst půlhodinovou pauzu na oběd, pak to není 0,5, protože to je půl dne, nukoliv půl hodiny. A tak dál a tak dál.

Schopnost vygenerovat si vhodná čísla je velmi častým a logickým požadavkem. Až do teď jsme museli kopírovat vzorce kombinující dvě funkce: NÁHČÍSLO, která vracela jen čísla z intervalu 0–1 a druhé „stařičké“ funkce RANDBETWEEN, která zase neuměla čísla desetinná. Já vím, všichni umíme sčítat, odčítat, násobit a dělit, ale proč.

Proč bych mohl potřebovat generovat náhodná čísla:

  • Datumy v nějakém rozsahu
  • Čas v nějakém rozsahu (Někde mezi 8. ráno a 4. odpoledne)
  • Čas kolem nějaké hodiny – příchody kolem 8. ráno
  • Počty odpracovaných hodiny
  • IP adresy
  • Teploty nebo další fyzikální jednotky
  • Počty čehokoliv
  • Jakékoliv „statistiky“

Excel předplatitelům Office 365 přináší pravidelně hodně novinek a RANDARRAY je jednou z nich.

Jak pracovat s RANDARRAY

Funkce RANDARRAY vrací matici náhodných čísel. Koho děsí slovo matice, dosaďte si oblast nebo jen jednu či více hodnot. (řádek, sloupec nebo oblast obsahujících hodnoty) Například oblast D2:F6, neboli 5 řádků a 3 sloupce. Dává smysl?

=RANDARRAY([řádky];[sloupce];[min];[max];[celé_číslo])

Můžete určit:

  • počet řádků a sloupců, které se mají vyplnit,
  • minimální a maximální hodnotu
  • zda potřebujete vrátit celá čísla nebo desetinné hodnoty.

Ukažme si to na třech jednoduchých příkladech:

Funkce RANDARRAY a její základní použití.

  1. matice 3×3 – bez zadání dalších argumentů funkce vygenerovala desetinná čísla 0–1
  2. matice 3×3 – jsou generována reálná čísla v zadaném rozsahu 1–100 – =RANDARRAY(3;3;1;100)
  3. matice 3×3 – díky argumentu ‚=RANDARRAY(3;3;1;100;PRAVDA) jsou generována celá čísla v rozsahu 1–100.

Pár poznámek na závěr.

  • Pokud nezadáte argument řádku nebo sloupce, vrátí funkce RANDARRAY jedinou hodnotu z intervalu 0 až 1.
  • Pokud argument pro minimum a maximum nezadáte, funkce RANDARRAY nastaví hodnotu argumentu na 0 a 1 v uvedeném pořadí.
  • Hodnota argumentu minimální počet musí být menší než hodnota argumentu maximální počet, v opačném případě vrátí funkce RANDARRAY chybu #HODNOTA!.
  • Pokud nezadáte argument celé_číslo, funkce RANDARRAY nastaví výchozí hodnotu na FALSE nebo desetinnou hodnotu.

Pro pokročilé

Funkce RANDARRAY vrátí matici, která bude mít přesah, pokud půjde o konečný výsledek vzorce. To znamená, že po stisknutí klávesy ENTER Excel dynamicky vytvoří oblast matici zadané velikosti. Pokud jsou podpůrná data v excelové tabulce a používáte strukturované odkazy, po přidání dat do oblasti matice nebo odebrání dat z oblasti matice se velikost matice automaticky změní. Další informace najdete v článku o chování přesahujících matic.

Excel má omezenou podporu pro dynamické matice mezi sešity. Pokud zdrojový sešit zavřete, vrátí všechny propojené dynamické maticové vzorce chybu #REF!. Pokud zdrojový sešit zavřete, vrátí všechny propojené dynamické maticové vzorce po aktualizaci chybu #REF!.

Závěrem?

Doufám, že se vám bude funkce líbit. Pro její dokonalé využití bude fajn, pokud se postíte i do studia dynamických matic, ale o tom až někdy příště. Zatím se můžete tvářit, že jste o ničem takovém neslyšeli. Původní funkce můžete samozřejmě používat dále (a ono vám mimo Excel 365 moc jiného nezbyde), nicméně již nyní je jasné, že zvolna odcházejí do důchodu.

Další informace na stránkách excel.uservoice.com nebo přímo v originální nápovědě MS Excel.

Tuto, ale i mnoho dalších funkcí vás rádi naučíme v našich kurzech Excelu.

 

Rubriky

Archivy