18. Funkce

V následující části podáme stručný přehled nejdůležitějších funkcí MS Excel. Z důvodu omezeného rozsahu je popis funkcí velice stručný a tím i poměrně nevýstižný, neuvádíme ani význam jednotlivých parametrů. Tyto informace jsou díky mnemotechnickým názvům parametrů ve většině případů zbytečné, v případě potřeby je možno je vyhledat v on-line nápovědě, vyčerpávající popis pak v Přehledu funkcí MS Excel [1, 16]. Přesto doufáme, že pro prvotní orientaci ve funkcích MS Excel je následující seznam užitečnou pomůckou.

 

V seznamu jsme vynechali funkce ze skupiny inženýrské funkce (jsou pouze v americké verzi MS Excel). Tyto funkce nejsou pro začínajícího uživatele nezbytné, jejich použití často vyžaduje hlubší znalosti. Podrobnější informace najdete v [1].

Upozornění : V rámci chyb při lokalizaci programu došlo k situaci, že řada argumentů funkcí má jiné názvy v nápovědě (Help) a jiné při jejím připojení povelem Vložit-Funkce. V tom případě uvádíme názvy parametrů uvedené v povelu Vložit-Funkce.

18.1. Matematické a trigonometrické

Pozn. : Argumenty, které mají význam velikosti úhlu jsou požadovány v radiánech. Pokud má funkce více argumentů, je třeba je oddělit oddělovačem. V české verzi je jím středník, v americké verzi středník nebo čárka. Závisí to na nastavení parametrů Windows. Je to způsobeno použitím čárky pro oddělovače desetin u čísel v české verzi MS Excel.

 

česká verze

americká verze

ABS(číslo)

ABS(number)

Vrátí jako výsledek absolutní hodnotu zadaného čísla.

ARCCOS(číslo)

ACOS(number)

Vrátí jako výsledek arkuskosinus zadaného čísla.

ARCCOSH(číslo)

ACOSH(number)

Inverzní funkce k hyperbolickému kosinu.

ARCSIN(číslo)

ASIN(number)

Vrátí jako výsledek arkussinus zadaného čísla.

ACSINH(číslo)

ASINH(number)

Inverzní funkce k hyperbolickému sinu.

ARCTG(číslo)

ATAN(number)

Vrátí jako výsledek arkustagens zadaného čísla.

ARCTG2(x_číslo;y_číslo)

ATAN2(number)

Vrací arkustangens určených souřadnic x a y.

ARCTGH(číslo)

ATANH(number)

Tato funkce je inverzní funkcí k funkci hyperbolický tangens.

CELÁ.ČÁST(číslo)

INT(number)

Zaokrouhlí číslo dolů na nejbližší celé číslo. U záporných např. CELÁ.ČÁST(-0.9) = -1.

COS(číslo)

COS(number)

Vypočte kosinus zadaného úhlu.

COSH(číslo)

COSH(number)

Vypočte hyperbolický kosinus zadaného čísla.

COUNTBLANK(oblast)

COUNTBLANK(range)

Vrátí počet prázdných buněk v dané oblasti.

COUNTIF(oblast;kritérium)

COUNTIF(range;criteria)

Vrátí počet neprázdných buněk v dané oblasti.

DEGRESE(úhel)

DEGRESE(angle)

Převede radiány na stupně

DETERMINANT(pole)

MDETERM(array)

Vrátí determinant zadané matice (pole).

EXP(číslo)

EXP(number)

Vypočte zadanou mocninu čísla e.

FAKTORIÁL(číslo)

FACT(number)

Vypočte faktoriál čísla.

INVERSE(pole)

MINVERSE(array)

Vypočte inverzní matici k matici obsažené v zadaném poli.

KOMBINACE(celkem ;kombinace)

COMBIN(number;number_chosen)

Vrátí počet možných kombinací pro zadaný počet prvků.

LN(číslo)

LN(number)

Vrací jako výsledek přirozený logaritmus čísla.

LOG(číslo)

LOG10(number)

Tato funkce vrací jako výsledek logaritmus čísla při základu 10.

LOGZ(číslo;základ)

LOG(number;base)

Vrací jako výsledek logaritmus čísla při zadaném základu.

MOD(číslo;dělitel)

MOD(number;divisor)

Počítá zbytek po dělení čísla dělitelem.

NÁHČÍSLO()

RAND()

Vrací pseudonáhodné číslo s rovnoměrným rozdělením v intervalu <0;1)

ODMOCNINA(číslo)

SQRT(number)

Vypočte druhou odmocninu čísla.

PI()

PI()

Vrací hodnotu matematické konstanty p =3.14159265358979.

POWER(číslo;mocnina)

POWER(number;power)

Vrátí umocněný argument.

RADIANS(úhel)

RADIANS(angle)

Převádí stupně na radiány.

ROMAN(číslo;forma)

ROMAN(number;form)

Vrátí číslo v římských číslicích jako text

ROUNDDOWN(číslo;číslice)

ROUNDDOWN(number;num _digits)

Zaokrouhluje číslo dolů k nule.

ROUNDUP(číslo;číslice)

ROUNDUP(number;num _digits)

Zaokrouhluje číslo nahoru od nuly.

SIGN(číslo)

SIGN(number)

Určí znaménko čísla. Je-li číslo kladné, nabývá hodnoty 1, je-li záporné, nabývá hodnoty
-1, je-li nulové, nabývá hodnoty 0.

SIN(číslo)

SIN(number)

Vypočte sinus zadaného úhlu.

SINH(číslo)

SINH(number)

Vypočte hyperbolický sinus zadaného čísla.

SOUČIN(číslo1;číslo2;...)

PRODUCT(number1;number2)

Vynásobí všechna čísla uvedená jako argumenty.

SOUČIN.MATIC(pole1;pole2)

MMULT(array1;array2)

Počítá součin dvou matic.

SOUČIN.SKALÁRNÍ(blok1;blok2;
blok3;...
)

SUMPRODUCT(array1;array2;array3;...)

Vynásobí odpovídající položky daných bloků nebo matic a součiny sečte.

SUMA(číslo1;číslo2;...)

SUM(number1;number2;...)

Sečte čísla zadaná jako argumenty.

SUMA.ČTVERCŮ(číslo1;číslo2;...)

SUMSQ(number1;number2;...)

Výsledkem je součet kvadrátů argumentů.

SUMIF(oblast;kritéria;součet)

SUMIF(range;criteria;sum_range)

Sečte buňky podle zadaných podmínek

SUMX2MY2(pole_x;pole_y)

SUMX2MY2(array_x;array_y)

Vrátí součet rozdílů čtverců u odpovídajících si prvků v poli.

SUMX2PY2(pole_x;pole_y)

SUMX2PY2(array_x;array_y)

Vrátí součet součtů čtverců u odpovídajících si prvků v poli.

SUMXMY2(pole_x;pole_y)

SUMXMY2(array_x;array_y)

Vrátí součet čtverců rozdílu u odpovídajících si prvků v poli.

TG(číslo)

TAN(number)

Vrací tangens daného úhlu.

TGH(číslo)

TANH(number)

Vrací hyperbolický tangens zadaného čísla.

USEKNOUT(číslo;počet_desetin)

TRUNC(number;num_digits)

Odstraní z čísla desetinná místa a zaokrouhlí ho tak dolů.

ZAOKROUHLIT(číslo;počet_číslic)

ROUND(number;num_digits)

Zaokrouhlí číslo na zadaný počet míst.

ZAOKROUHLIT.DOLŮ(číslo; významnost)

FLOOR(number;significance)

Zaokrouhlí číslo dolů na nejbližší násobek zadané hodnoty významnost.

ZAOKROUHLIT.NA.LICHÉ(číslo)

ODD(number)

Zaokrouhlí číslo na nejbližší celé liché číslo.

ZAOKROUHLIT.NA.SUDÉ(číslo)

EVEN(number)

Zaokrouhlí číslo na nejbližší celé sudé číslo.

ZAOKROUHLIT.NAHORU
(číslo; významnost)

CEILING(number;significance)

Zaokrouhlí číslo na nejbližší násobek významnosti.

18.2. Datum a čas

Pozn. : pro ukládání informací o datumu a času se používá speciální datový typ nazývaný sériové číslo. Je v něm uloženo vždy současně datum i čas i když se zobrazuje jen část z těchto informací. Pokud chceme vidět jak sériové číslo vypadá, postačí nastavit zobrazení vzorců povelem Nástroje-Předvolby-Zobrazení-vzorce (Tools-Options-View-Formulas). Je to reálné číslo, celá část obsahuje zadané datum, desetinná část zadaný čas.

 

ČAS(hodiny;minuty;sekundy)

TIME(hour;minute;second)

Převádí zadání času na zlomek dne (na desetinnou část sériového dne kalendářního data).

ČASHODN(čas_text)

TIMEVALUE(time_text)

Převádí textové zadání času na zlomek dne.

DATUM(rok;měsíc;den)

DATE(year;month;day)

Vrací sériové číslo konkrétního kalendářního data, zadaného po částech.

DATUMHODN(datum_text)

DATEVALUE(date_text)

Vrací sériové číslo kalendářního data, zadaného v textové podobě.

DEN(sériové_číslo)

DAY(serial_number)

Vrací číslo dne v měsíci, které odpovídá zadanému sériovému číslu kalendářního data. Je to celé číslo od 1 do 31.

DENTÝDNE(sériové_číslo)

WEEKDAY(serial_number)

Určí den v týdnu pro den zadaný sériovým číslem kalendářního data. Den v týdnu je číslo od 1 (neděle) do 7 (sobota).

DNES()

TODAY()

Určí sériové číslo kalendářního data odpovídající systémovému datu.

HODINA(sériové_číslo)

HOUR(serial_number)

Vrací hodinu odpovídající zadanému sériovému číslu.

MĚSÍC(sériové_číslo)

MONTH(serial_number)

Vrací měsíc odpovídající zadanému sériovému číslu.

MINUTA(sériové_číslo)

MINUTE(serial_number)

Vrací minutu odpovídající zadanému sériovému číslu.

NYNÍ()

NOW()

Vrací sériové číslo aktuálního data a času.

ROK(sériové_číslo)

YEAR(serial_number)

Ze zadaného sériového čísla kalendářního data určí rok jako celé číslo od 1900 do 2078.

ROK360(start_datum; konec_datum)

DAYS360(start_date;end_date)

Vrací počet dní mezi dvěma daty, který vychází z předpokladu, že rok má 12 měsíců po 30 dnech.

SEKUNDA(sériové_číslo)

SECOND(serial_number)

Určí počet sekund odpovídající zlomkové části zadaného sériového čísla kalendářního data. Výsledkem je číslo od 0 do 59.

18.3. Informační funkce

CHYBA.TYP(chybová_hodnota)

ERROR.TYPE(error_val)

Výsledkem je číslo odpovídající jednomu z typů chybových hodnot.

JE.ČÍSLO(hodnota)

ISNUMBER(value)

Vrací hodnotu PRAVDA, jestliže argument odkazuje na číslo.

JE.CHYBA(hodnota)

ISERR(value)

Vrací hodnotu PRAVDA, jestliže argument odkazuje na jakoukoliv chybovou hodnotu s vyjímkou #NEDEF.

JE.CHYBHODN(hodnota)

ISERROR(value)

Vrací hodnotu PRAVDA, jestliže argument odkazuje na jakoukoliv chybovou hodnotu.

JE.LOGHODN(hodnota)

ISLOGICAL(value)

Vrací hodnotu PRAVDA, jestliže argument odkazuje na logickou hodnotu.

JE.NEDEF(hodnota)

ISNA(value)

Vrací hodnotu PRAVDA, jestliže argument odkazuje na chybovou hodnotu #NEDEF.

JE.NETEXT(hodnota)

ISNONTEXT(value)

Vrací hodnotu PRAVDA, jestliže argument odkazuje na buňku, ve kterém není text (včetně prázdné buňky).

JE.ODKAZ(hodnota)

ISREF(value)

Vrací hodnotu PRAVDA, jestliže argument odkazuje na nějaký odkaz.

JE.PRÁZDNÉ(hodnota)

ISBLANK(value)

Vrací hodnotu PRAVDA, jestliže argument odkazuje na prázdnou buňku.

JE.TEXT(hodnota)

ISTEXT(value)

Vrací hodnotu PRAVDA, jestliže argument odkazuje na text.

N(hodnota)

N(value)

Funkce převádí hodnoty (datumové, logické aj.) na čísla.

NEDEF()

NA()

Vrací chybovou hodnotu #NEDEF.

O.PROSTŘEDÍ(typ_text)

INFO(type_num)

Vrací informaci o aktuálním operačním systému.

POLÍČKO(info_typ;odkaz)

CELL(info_type;reference)

Vrací informace o formátování, umístění a obsahu levé horní buňky v odkazu.

TYP(hodnota)

TYPE(value)

Vrací typ hodnoty.

18.4. Statistické funkce

BETADIST(x;alfa;beta;A;B)

BETADIST(x;alpha;beta;A;B)

Vrátí hodnotu distribuční funkci rozdělení beta.

BETAINV(prst;alfa;beta;A;B)

BETAINV(probability;alpha;beta;A;B)

Vrátí inverzní hodnotu distribuční funkci rozdělení beta.

BINOMDIST(úspěch;pokusy;úspěch;počet)

BINOMDIST(number_s;trials;probability_s; cumulative)

Vrátí distribuční funkci pro binomické rozdělení.

CONFIDENCE(alfa;sm_odchylka;počet)

CONFIDENCE(alpha;standard_dev;size)

Vrací interval věrohodnosti pro střední hodnotu základního souboru.

CORREL(pole1;pole2)

CORREL(array1;array2)

Vrátí korelační koeficient mezi údaji ze dvou polí.

COVAR(pole1;pole2)

COVAR(array1;array2)

Vrátí hodnotu kovariance.

CRITBINOM(pokusy;prst_s;alfa)

CRITBINOM(trials;probability_s;alpha)

Vrátí nejmenší přirozené číslo, pro které má pravděpodobnostní funkce binomického rozdělení hodnotu větší nebo rovnu kritické hodnotě alfa.

ČETNOSTI(data_pole;bins_pole)

FREQUENCY(data_array;bins_array)

Provádí jednoduché třídění a vrací sloupcový vektor s rozdělením četností.

DEVSQ(číslo1;číslo2;...)

DEVSQ(number1;number2)

Vrátí součet čtverců odchylek

EXPONDIST(x;lambda;součet)

EXPONDIST(x;lambda;cumulative)

Vrátí distribuční funkci exponenciálního rozdělení.

FDIST(x;volnost1;volnost2)

FDIST(x;degrees_freedom1; degrees_freedom2)

Vrátí hodnotu distribuční funkce F rozdělení.

FINV(prst;volnost1;volnost2)

FINV(probability;degrees_freedom1; degrees_freedom2)

Vrátí hodnotu inverzní funkce k distribuční funkci F rozdělení.

FISHER(x)

FISHER(x)

Vrátí Fisherovu transformaci čísla x.

FISHERINV(y)

FISHERINV(y)

Vrátí inverzní hodnotu funkce k Fischerově transformaci.

FORECAST(x;pole_y;pole_x)

FORECAST(x;known_y's;known_x's)

Vrátí odhad hodnoty y v bodě x na základě lineární regresní přímky.

FTEST(pole1;pole2)

FTEST(array1;array2)

Vrátí výsledek F-testu.

GAMMADIST(x;alfa;beta;součet)

GAMMADIST(x;alpha;beta;cumulative)

Vrátí hodnotu distribuční funkce rozdělení gama.

GAMMAINV(prst;alfa;beta)

GAMMAINV(probability;alpha;beta)

Vrátí hodnotu inverzní funkce k distribuční funkci rozdělení gama.

GAMMALN(x)

GAMMALN(x)

Vrátí přirozený logaritmus gama funkce.

GEOMEAN(číslo1;číslo2)

GEOMEAN(number1;number2;...)

Vrátí geometrickou střední hodnotu.

HARMEAN(číslo1;číslo2)

HARMEAN(number1;number2;...)

Vrátí harmonický průměr.

HYPGEOMDIST(úspěch;celkem;
základ_úspěch;základ_celkem)

HYPGEOMDIST(sample_s;number_sample; population_s;...)

Vrátí hodnotu distribuční funkce hypergeometrického rozdělení.

CHIDIST(x;volnost)

CHIDIST(x;degrees_freedom)

Vrátí jednostrannou distribuční funkci chí-kvadrát.

CHIINV(prst;volnost)

CHIINV(probability;degrees_freedom)

Vrátí inverzní jednostrannou distribuční funkci chí-kvadrát.

CHITEST(aktuální;volnost)

CHITEST(actual_range;expeced_range)

Provede test nezávislosti.

INTERCEPT(pole_x;pole_y)

INTERCEPT(known_y's;known_x's)

Vrátí průsečík regresní přímky s osou x.

KURT(číslo1;číslo2;....)

KURT(number1;number2;...)

Vrátí hodnotu špičatosti rozdělení dané množiny.

LARGE(pole;k)

LARGE(array;k)

Vrátí k-tou největší hodnotu množiny.

LINREGRESE(známá_y;známá_x;
konstanta;statistiky
)

LINEST(known_y's;known_x's;
const;stats
)

Odhad parametrů lineární regresní funkce metodou nejmenších čtverců.

LINTREND(hodnoty_y;hodnoty_x;nová_x;
konstanta
)

TREND(known_y's;known_x's;
new_x's;const
)

Proklad přímky mezi hodnotami x a y metodou nejmenších čtverců.

LOGINV(prst;stř_hodn;sm_odch)

LOGINV(probability;mean;standard_dev)

Vrátí inverzní funkci k distribuční funkci logaritmicko-normálního rozdělení.

LOGLINREGRESE(známá_y;
známá_x;konstanta; statistiky
)

LOGEST(known_y's;known_x's;const;
stats
)

Odhad parametrů obecné exponenciální regresní funkce.

LOGLINTREND(známá_y;známá_x;
konstanta; statistiky
)

GROWTH(known_y's;known_x's;
new_x's;const
)

Proklad obecné exponenciální funkce mezi zadanými hodnotami x a y.

LOGNORMDIST(x;střední;sm_odchylka)

LOGNORMDIST(x;mean;standard_dev)

Vrátí distribuční funkci logaritmicko-normálního rozdělení.

MAX(číslo1;číslo2;...)

MAX(number1;number2;...)

Vyhledá nejvyšší hodnotu ze seznamu argumentů.

MEDIAN(číslo1;číslo2;...)

MEDIAN(number1;number2;...)

Určuje medián ze zadaných čísel.

MIN(číslo1;číslo2;...)

MIN(number1;number2;...)

Vyhledá nejnižší hodnotu ze seznamu argumentů.

MODE(číslo1;číslo2;...)

MODE(number1;number2;...)

Vrátí modus nejčastěji se vyskytujících hodnot dané posloupnosti.

NEGBINOMDIST(číslo_f;číslo_s;prst_s)

NEGBINOMDIST(number_f;number_s; probability_s)

Vrátí distribuční funkci negativního binomického rozdělení.

NORMDIST(x;střední;sm_odch;součet)

NORMDIST(x;mean;standard_dev; cumulative)

Vrátí distribuční funkci normálního rozdělení.

NORMINV(x;střední;sm_odch)

NORMINV(probability;mean;standard_dev)

Vrátí inverzní funkci k distribuční funkci normálního rozdělení.

NORMSDIST(z)

NORMSDIST(z)

Vrátí distribuční funkci standardního normálního rozdělení.

NORMSINV(prst)

NORMSINV(probability)

Vrátí inverzní funkci k distribuční funkci standardního normálního rozdělení.

PEARSON(pole1;pole2;...)

PEARSON(array1;array2)

Vrátí Pearsonův korelační koeficient.

PERCENTIL(pole;k)

PERCENTIL(array;k)

Vrátí hodnotu, která odpovídá k-tému percentilu v poli hodnot.

PERCENTRANK(pole;x;desetiny)

PERCENTRANK(array;x;signifikace)

Vrátí procentní pořadí čísla x v poli hodnot.

PERMUTACE(počet;permutace)

PERMUTACE(number;number_chosen)

Vrátí počet permutací pro zadaný počet objektů.

POČET(hodnota1;hodnota2;...)

COUNT(value1;value2;....)

Spočítá číselné hodnoty v seznamu argumentů.

POČET2(hodnota1;hodnota2;...)

COUNTA(value1;value2;....)

Spočítá hodnoty v seznamu argumentů.

POISSON(x;střední;součet)

POISSON(x;mean;cumulative)

Vrátí distribuční funkci Poissonova rozdělení.

PROB(x_oblast;prst_oblast;dolní_limit;horní _limit)

PROB(x_range;prob_range;lower_limit; upper_limit)

Vrátí pravděpodobnost toho, že hodnoty v oblasti leží v daném intervalu.

PRŮMĚR(číslo1;číslo2;...)

AVERAGE(number1;number2;...)

Vrátí aritmetický průměr argumentů.

PRůMODCHYLKA(číslo1;číslo2;...)

AVEDEV(numbe1;number2;...)

Vrátí průměrnou absolutní odchylku bodů od střední hodnoty.

QUARTIL(pole;kvartil)

QUARTILE(array;quart)

Vrátí hodnotu kvartilu ze zadaného pole dat.

RANK(číslo;odkaz;pořadí)

RANK(number;ref;order)

Vrátí pořadí argumentu (podle velikosti) v seznamu čísel.

RKQ(pole_y;pole_x)

RKQ(known_y's;known_x's)

Vrátí druhou mocninu Pearsonova korelačního koeficientu pro lineární regresi.

SKEW(číslo1;číslo2;...)

SKEW(number1;number2;...)

Vrátí šikmost rozdělení náhodné veličiny.

SLOPE(pole_x;pole_y)

SLOPE(known_y's;known_x's)

Vrátí směrnici lineární regresní přímky proložené zadanými body.

SMALL(pole;k)

SMALL(array;k)

Vrátí k-tou nejmenší hodnotu v poli.

SMODCH(číslo1;číslo2;...)

STDEVP(number1;number2....)

Určí směrodatnou odchylku hodnot pro všechny jednotky základního souboru.

SMODCH.VÝBĚR(číslo1;číslo2;...)

STDEV(number1;number2....)

Určí odhad směrodatné odchylky, který počítá ze zadaných výběrových hodnot.

STANDARDIZE(x;střední_hodnota; sm_odchylka )

STANDARDIZE(x;mean;standard_dev)

Vrátí normalizovanou náhodnou veličinu s normálním rozdělením.

STEYX(pole_y;pole_x)

STEYX(known_y's;known_x's)

Vrátí standardní chybu při výpočtu lineární regrese.

TDIST(x;volnost;strany)

TDIST(x;degrees_freedom;tails)

Vrátí hodnotu distribuční funkce Studentova rozdělení.

TINV(prst;volnost)

TINV(porbability;degrees_freedom)

Vrátí inverzní funkci k TDIST.

TRIMMEAN(pole;zlomek)

TRIMMEAN(rray;percent)

Vrátí střední hodnotu datové posloupnosti.

TTEST(pole1;pole2;strany;typ)

TTEST(array1;array2;tails;type)

Vrátí pravděpodobnost spojenou se Studentovým t-testem.

VAR(číslo1;číslo2;...)

VARP(number1;number2....)

Vypočte rozptyl hodnot v základním souboru, vypočtený pro všechny jednotky tohoto souboru.

VAR.VÝBĚR(číslo1;číslo2;...)

VAR(number1;number2....)

Výsledkem je odhad rozptylu na základě výběrových hodnot.

WEIBULL(x;alfa;beta;typ)

WEIBULL(x;alpha;beta;cumulative)

Vrátí hodnotu distribuční funkce Weibullova rozdělení.

ZTEST(pole;x;sigma)

ZTEST(array;x;sigma)

Vrátí dvoustrannou hodnotu P, která je výsledkem z-testu.

18.5. Vyhledávací funkce

INDEX(Odkaz;Řádek;Sloupec;Plocha)

INDEX(reference;row_num;
column_num;arrea_num
)

Vrací odkaz na určenou buňku nebo buňky uvnitř oblasti určené parametrem Odkaz.

INDEX(Pole;Řádek;Sloupec)

INDEX(arrea;row_num;column_num)

Vrací hodnotu dané buňky nebo pole buněk uvnitř daného pole.

NEPŘÍMÝ.ODKAZ(odkaz_text;a1)

INDIRECT(ref_text;a1)

Vrátí odkaz specifikovaný argumentem odkaz_text.

ODKAZ(řádek_číslo;sloupec_číslo;
abs_číslo;a1;tabulka_text
)

ADRESS(row_num;column_num;
abs_num;a1;sheet_text
))

Vytváří odkaz (adresu) buňky jako text daný čísly určeného řádku a sloupce.

POČET.BLOKŮ(odkaz)

AREAS(reference)

Vrátí počet bloků v oblasti odkazu. Blok je spojitá skupina buněk nebo jedna buňka.

POSUN(odkaz;řádky;sloupce;výška;
šířka
)

OFFSET(reference;rows;cols;height;
width
)

Vrací jako výsledek odkaz specifikované výšky a šířky, posunutý z jiného odkazu o daný počet řádků a sloupců.

POZVYHLEDAT(co_hodnota;
co_pole;splnit_typ
)

MATCH(lookup_value;lookup_array;
match_type
)

Vrátí relativní pozici elementu nějakého pole, odpovídající zadané hodnotě a zadanému způsobu.

ŘÁDEK(odkaz)

ROW(reference)

Vrátí číslo řádku levého horního rohu odkazu.

ŘÁDKY(pole)

ROWS(array)

Vrátí počet řádků odkazu na pole (matici).

SLOUPCE(pole)

COLUMNS(array)

Vrátí počet sloupců v matici nebo oblasti.

SLOUPEC(odkaz)

COLUMN(reference)

Výsledkem funkce je číslo sloupce levého horního rohu odkazu.

SVYHLEDAT(co_hodnota;tabulka_pole;
sl_index_číslo
)

VLOOKUP(lookup_value;table_array;
row_index_num
)

Hledá v levém krajním sloupci (tj. svisle) zadanou hodnotu a výsledkem je některá z hodnot ve stejném řádku.

TRANSPOZICE(pole)

TRANSPOSE(array)

Transponuje matici. Funkce musí být zapsána jako maticový vzorec do bloku se stejným počtem sloupců a řádků, jako má matice v argumentu řádků a sloupců.

VVYHLEDAT(co_hodnota;
tabulka_pole;řádek_index_číslo
)

HLOOKUP(lookup_value;table_array;
col_index_num
)

Vyhledá v nejvyšším řádku pole konkrétní hodnotu a vrátí hodnotu v určeném řádku ve stejném sloupci.

VYHLEDAT(co_hodnota;co_vektor;
výsledný_vektor
)

LOOKUP(lookup_value;
lookup_vector;result_vector
)

Najde hodnotu v jednom vektoru, přesune se do odpovídající buňky druhého vektoru a vrátí hodnotu této buňky.

ZVOLIT(index_číslo;hodnota1;
hodnota2;...
)

CHOOSE(index_num;value1;
value2;...
)

Zvolí hodnotu ze seznamu hodnot, jejíž pořadí v seznamu argumentů udává index_číslo.

18.6. Databázové funkce

DMAX(databáze;pole;podmínka)

DMAX(database;field;criteria)

Výsledkem je nejvyšší číslo ze sloupce pole vybraného ze záznamů databáze, které splňují podmínku.

DMIN(databáze;pole;podmínka)

DMIN(database;field;criteria)

Výsledkem je nejnižší číslo ze sloupce pole vybraného ze záznamů databáze, které splňují podmínku.

DPOČET(databáze;pole;podmínka)

DCOUNT(database;field;criteria)

Spočítá v záznamech databáze, které vyhovují podmínce, buňky v zadané položce (pole), jež obsahují čísla.

DPOČET2(databáze;pole;podmínka)

DCOUNTA(database;field;criteria)

Spočítá v záznamech databáze, které vyhovují podmínce, neprázdné buňky v zadané položce.

DPRŮMĚR(databáze;pole;podmínka)

DAVERAGE(database;field;criteria)

Vypočítá průměr z hodnot položky (pole) v záznamech databáze, které vyhovují podmínce.

DSMODCH(databáze;pole;podmínka)

DSTDEVP(database;field;criteria)

Výsledkem je směrodatná odchylka vypočtená z hodnot ve sloupci pole z těch záznamů databáze, které splňují podmínku.

DSMODCH.VÝBĚR(databáze;pole;
podmínka
)

DSTDEV(database;field;criteria)

Výsledkem je odhad směrodatné odchylky vypočtený z hodnot ve sloupci pole z těch záznamů databáze, které splňují podmínku.

DSOUČIN(databáze;pole;podmínka)

DPRODUCT(database;field;criteria)

Výsledkem je součin čísel ze sloupce pole z těch záznamů databáze, které splňují podmínku.

DSUMA(databáze;pole;podmínka)

DSUM(database;field;criteria)

Výsledkem je součet hodnot ze sloupce pole z těch záznamů databáze, které splňují podmínku.

DVAR(databáze;pole;podmínka)

DVARP(database;field;criteria)

Výsledkem je rozptyl vypočtený z hodnot ve sloupci pole z těch záznamů databáze, které splňují podmínku.

DVAR.VÝBĚR(databáze;pole;podmínka)

DVAR(database;field;criteria)

Výsledkem je odhad rozptylu vypočtený z hodnot ve sloupci pole z těch záznamů databáze, které splňují podmínku.

DZÍSKAT(databáze;pole;podmínka)

DGET(database;field;criteria)

Extrahuje z databáze jedinou hodnotu a může ji použít k získání položky, která splňuje zadanou podmínku.

18.7. Textové funkce

CONCATENATE(text1;text2;...)

CONCATENATE(text1;text2;...)

Sloučí několik textových položek do jedné.

ČÁST(text;start_číslo;číslo_znaky)

MID(text;start_num;num_chars)

Vrátí určený počet znaků z textového řetězce počínaje určenou pozicí.

DÉLKA(text)

LEN(text)

Vrátí počet znaků textového řetězce.

DOSADIT(text;starý_text;nové_text;
návrh_číslo
)

SUBSTITUTE(text;old_text;new_text;
instance_num
)

Dosadí v textovém řetězci nové_text za starý_text.

HLEDAT(najít_text;v_rámci_text;
začátek_číslo
)

SEARCH(find_text;within_text;
start_num
)

Zjišťuje výskyt zadaného textu v jiném textovém řetězci (začíná od udané počáteční pozice), výsledkem je pořadí znaku od kterého začíná první výskyt zadaného textu.

HODNOTA(text)

VALUE(text)

Konvertuje texty na čísla.

HODNOTA.NA.TEXT(hodnota;
formát_text
)

TEXT(value;format_text)

Převádí číselnou hodnotu na textovou hodnotu, kterou je zápis čísla v zadaném tvaru.

(číslo;desetinných_míst)

DOLLAR(number;decimals)

Konvertuje číslo na text v měnovém formátu, ve kterém můžete změnit počet desetin.

KÓD(text)

CODE(text)

Zjistí číselný kód prvního znaku zadaného textového řetězce.

MALÁ(text)

LOWER(text)

Převádí velká písmena v textovém řetězci na malá.

NAHRADIT(starý_text;začátek_číslo;
číslo_znaky;nový_text
)

REPLACE(old_text;start_num;
num_chars;new_text
)

Nahradí část textového řetězce uvnitř jiného textu a jejím výsledkem je pozice znaku, kde hledaný text začíná.

NAJÍT(najít_text;v_rámci_text; začátek_číslo)

FIND(find_text;within_text;start_num)

Vyhledá zadaný textový řetězec uvnitř jiného textu a jejím výsledkem je pozice znaku, kde hledaný text začíná.

OPAKOVAT(text;kolikrát)

REPT(text;number_times)

Opakuje text tolikrát, kolikrát zadáte.

PROČISTIT(text)

TRIM(text)

Odstraní z textu všechny přebytečné mezery, které neoddělují slova.

STEJNÉ(text1;text2)

EXACT(text1;text2)

Výsledkem je hodnota PRAVDA, pokud jsou oba textové řetězce identické.

T(hodnota)

T(value)

Výsledkem je text, na který argument funkce odkazuje.

VELKÁ(text)

UPPER(text)

Převádí malá písmena v textu na velká.

VELKÁ2(text)

PROPER(text)

Převádí malá písmena na začátku slov v textu na velká.

VYČISTIT(text)

CLEAN(text)

Odstraní z textu všechny netisknutelné znaky.

ZAOKROUHLIT.NA.TEXT(číslo;
desetinných_místo;bez_oddělovaèù
)

FIXED(number;decimals;no_commas)

Zaokrouhlí číslo na zadaný počet desetinných míst a převede jej do textové podoby ve formátu desetinného čísla.

ZLEVA(text;číslo_znaky)

LEFT(text;num_chars)

Vrátí nejvíce vlevo ležící znak(y) z textového řetězce.

ZNAK(číslo)

CHAR(number)

Vrátí znak odpovídající zadanému kódu.

ZPRAVA(text;číslo_znaky)

RIGHT(text;num_chars)

Vrátí nejvíce vpravo ležící znak(y) z textového řetězce.

18.8. Logické funkce

A(logická1;logická2;...)

AND(logical1;logical2;...)

Vrátí logickou hodnotu PRAVDA, jestliže jsou všechny argumenty rovny logické hodnotě PRAVDA.

KDYŽ(logická_test;
hodnota_jestliže_ano;
hodnota_jestliže_ne
)

IF(logical_test;value_it;value_if_false)

Vrátí určitou hodnotu, když argument logická_test je vyhodnocen jako PRAVDA a jinou hodnotu, pokud je tento argument vyhodnocen jako NEPRAVDA.

NE(logická)

NOT(logical)

Provádí negaci argumentu.

NEBO(logická1;logická2;...)

OR(logical1;logical2;...)

Vrátí logickou hodnotu PRAVDA, pokud je jeden nebo více argumentů roven logické hodnotě PRAVDA.

NEPRAVDA()

FALSE()

Výsledkem funkce je logická hodnota NEPRAVDA.

PRAVDA()

TRUE()

Výsledkem funkce je logická hodnota PRAVDA.

 

19. Visual Basic

Je to velmi účinný nástroj pro tvorbu složitějších aplikací pod MS Excelem. Je objektově orientovaný. Jeho programovací filozofie je podobná jako u běžných programovacích jazyků. Je součástí verzí MS Excel 5.0 a vyšších. Nižší verze používaly pro programování složitějších operací příkazy funkcí (viz kap. 18).

19.1. Používání Visual Basicu

Pokud chceme začít psát program ve Visual Basicu zvolíme povel Vložit-Makro-Modul (Insert-Macro-Module) objeví se nám list s názvem Modul1 (Module1) a můžeme psát program.

Abychom mohli s Visual Basicem efektivně pracovat používáme nápovědu. Tu lze vyvolat klávesou F1 nebo povelem Nápověda-Obsah (Help-Contents), v okně nápovědy klikneme na položku Programování ve Visual Basicu. Nápovědu k jednotlivým příkazům lze vyvolat následujícím způsobem :


1. Pomocí myši vybereme daný příkaz v editoru pro Visual Basic (Modul1).

2. Stiskneme klávesu F1

Dále ještě můžeme daný příkaz nebo metodu najít v nápovědě pomocí tlačítka Hledání (Search). Ke každému příkazu je uveden příklad.

19.2. Způsob programování

1. Ruční psaní programu do listu (modulu).
2. Přetahování příkladů z nápovědy a jejich upravování.

3. Programování s využitím nahrávání makra - povel Nástroje-Nahrát makro-Nahrát nové makro (Tools-Record Macro-Record New Macro) viz kapitola 17.

Nahrávání makra je velmi účinný nástroj pro tvorbu aplikací ve Visual Basicu. I když se tento programovací jazyk zdá na první pohled velmi složitým, za pomocí těchto nástrojů se dá provádět velmi jednoduché programování.

Barvy

Pro lepší přehlednost programu odlišuje Visual Basic proměnné, poznámky, příkazy a jiné objekty barvami. Podobně tak činí i jiné programovací jazyky. Jednotlivé barvy se dají měnit povelem Nástroje-Předvolby-Formát modulu (Tools-Options-Module Format).

 

Poznámka

Začátek poznámky je apostrof " ' " , po jejím ukončení klávesou Enter pak se poznámka zbarví zeleně.

19.3. Deklarace proměnných

Visual Basic používá tyto typy proměnných:

Boolean (logická hodnota), Integer (celé číslo), Long (long integer-dlouhé celé číslo), Single(single-precision floating-point, reálné číslo 4 Byte), Double (double-precision floating-point, reálné číslo 8 Byte), Currency (finanční hodnota), Date (datum), Object (nějaký objekt), String (řetězec), Variant (numerická proměnná nebo text).

Proměnné dělíme na globální, deklarují se na začátku programu a lokální deklarují se v jednotlivých procedurách a funkcích.

Syntaxe

Dim jméno_proměnné1(popis) As typ, jméno_proměnné (popis) As typ . . .

Příklady:

Dim Cislo As Integer

' Deklarace proměné typu Intege

Dim Promena1, Promena2 As Boolean, Datum As Date

' Deklarace více proměnných

Dim Vektor(50)

' Deklarace pole o velikosti 51 (0-50) jako Variant

Dim Matice(3,4) As Integer

' Deklarace pole typu (3,4) jako integer

Dim Matice2(1 To 5, 4 To 9, 3 To 5) As Double

'Deklarace trojrozměrné matice

Dim MyArray()

' Deklarace dynamického pole

 

19.4. Procedury a funkce

Ve Visual Basicu můžeme vytvářet uživatelsky definované funkce a procedury. Jednotlivé funkce a procedury se mohou navzájem volat

Struktura procedury

Sub Jméno_procedury()

Příkazy

.....

End Sub

 

Struktura funkce

Syntaxe

Function Jméno_funkce(Deklarace lokálních proměnných) deklarace funkce

End Function

Function Jméno_funkce(Proměnná As Double) As Double

Příkazy

....

End Function

 

19.5. Panel nástrojů Visual Basic

Pro práci s tímto programovacím jazykem se v hojné míře využívá panel nástrojů programu Visual Basic, který obsahuje tlačítka pro práci s kódem Visual Basic.

 

Tlačítko Vložit modul
Vloží nový modul do aktivního sešitu.

Tlačítko Editor nabídek
Zobrazí dialogové okno Editor nabídek, pomocí něhož lze upravovat nabídky programu MS Excel.

Tlačítko Prohlížeč objektů
Zobrazí dialogové okno Prohlížeč objektů, pomocí něhož lze prohlížet všechny procedury, metody, vlastnosti a objekty v aktuálním sešitě.

Tlačítko Spustit makro
Zobrazí dialogové okno Makro, ve kterém lze označit a spustit makro.

Tlačítko Krokovat makro
Zobrazí dialogové okno Makro, ve kterém lze označit a krokovat makro řádek po řádku.

Tlačítko Pokračovat
Pokračuje v provádění operace s makrem po jejím přerušení.

Tlačítko Konec makra
Ukončí provádění nebo nahrávání makra.

Tlačítko Záznam makra
Zobrazí dialogové okno Nahrát nové makro, takže je možné nahrát prováděné akce a vytvořit nové makro.

Tlačítko Přepnout zarážku
Nastaví nebo smaže zarážky na řádcích kódu v proceduře Visual Basic.

Tlačítko Kukátko
Zobrazí hodnotu výrazu.

Tlačítko Krok do
Provede další řádek kódu a pak se vrátí do režimu přerušení. Je-li volána procedura, bude krokovat také uvnitř této procedury.

Tlačítko Krok přes
Provede další řádek kódu a pak se vrátí do režimu přerušení. Je-li volána procedura, nebude ji krokovat, ale provede ji v jednom kroku najednou.

 

19.6. Objekty

Visual Basic je objektově orientovaný jazyk. Pracuje s objekty. Na tyto objekty se dají aplikovat jednotlivé metody a funkce.

Mezi objekty patří např. graf (Chart), osy (Axis), tlačítko (Button), dialogový box (Dialog), písmo (Font), ListBox, název (Name), Kontingenční tabulka (PivotTable), Panely nástrojů (Tolbars), list (Worksheet).

19.7. Příkazy, funkce, metody a vlastnosti

Visual Basic obsahuje velké množství předdefinovaných příkazů a funkcí, které se dají aplikovat na jednotlivé objekty. U každého příkazu, funkce nebo metody je uveden v nápovědě popis jednotlivých parametrů a uveden příklad, ten je možno pomocí schránky přetáhnout do modulu a pak s ním dále pracovat. Vzhledem k tomu, že nápověda je velmi dobře propracovaná, nebudeme uvádět jejich výčet.

 

Funkce
(Functions)

Patří mezi ně především matematické, časové, databázové, porovnávací a textové funkce (např. Abs, Cos, Date, Hex, IsArray, SQLBind, atd.

Metody
(Methods)

Označují převážně aplikace, které většinou provádíme pomocí menu nebo horkých kláves. Mezi ně patří např. AddMenu, AutoFilter, Copy, Delete, Open, Print.

Vlastnosti
(Properties
)

Označují vlastnosti daného objektu. (Např. ActiveChart (aktivní graf), BlackAndWhite, Bold (Tučný), Color, LineStyle (styl čáry), Locked (uzamčen), ReadOnly, atd.

Příkazy
(Statements)

Patří mezi ně příkazy pro programování, např. Else, If..Then, Input, Write atd.

19.8. Dialogové boxy

Jedním z velmi často používaných objektů jsou dialogové boxy. Návrh dialogového boxu provedeme pomocí povelu Vložit-Makro-Dialog (Insert-Macro-Dialog) a otevře se list pro návrh dialogového boxu zvaný dialog. Při návrhu používáme panel nástrojů Formuláře (Forms).

 

Tlačítko Název
Pojmenuje sešit, graf nebo dialog.

Tlačítko Textové pole
Vytvoří nebo upraví textové pole pro zadávání textu do dialogu.

Tlačítko Rámeček skupiny
Vytvoří rámeček skupiny sešitu, grafu nebo dialogu.

Tlačítko Vytvořit tlačítko
Vytvoří tlačítko, které bude moci být propojeno s provedením procedury Visual Basic.

Tlačítko Políčko
Vytvoří objekt Políčko.

Tlačítko Přepínač
Vytvoří objekt Přepínač.

Tlačítko Seznam
Vytvoří objekt Seznam.

Tlačítko Stahovací
Vytvoří objekt stahovací seznam (roletový seznam, Combo Box).

Tlačítko Seznam se vstupním polem
Vytvoří objekt Seznam se vstupním polem.

Tlačítko Stahovací seznam se vstupním polem
Vytvoří objekt Stahovací seznam se vstupním polem.

Tlačítko Posuvník
Vytvoří objekt posuvník.

Tlačítko Nastavovací pole
Vytvoří objekt Nastavovací pole.

Tlačítko Vlastnosti
Otevře okno Formát objektu obsahující několik karet, v níchž můžete změnit vlastnosti prvků dialogu v listu, grafu nebo dialogu.

Tlačítko Úprava kódu
Upraví nebo vytvoří kód makra k označenému objektu.

Tlačítko Přepnout mřížku
Zobrazí nebo skryje mřížku.

Tlačítko Spustit dialog
Spustí dialog který je právě upravován.

 

19.9. Formát objektů dialogu

Formát provádíme takto:


1. Myší vybereme daný objekt

2. Zvolíme povel Formát-Objekt (Format-Object) nebo stiskneme tlačítko a objeví se příslušné dialogové okno.

Nápisy na tlačítkách editujeme dvojitým kliknutím. Jednotlivé položky v dialogovém okně mají následující význam:

3D stínování
(3D Shading)

Určuje, zda bude ovládací prvek vypadat jako by byl třírozměrný. Používá se pouze na objekty v listu.

Přístupová Klávesa (Accelerator Key)

Nastaví pro daný ovládací prvek přístupovou klávesu. Používá se pouze na objekty v dialogovém okně.

Počáteční hodnota (Value)

Nastavuje výchozí stav vybraného zaškrtávacího políčka nebo přepínače na Nezaškrtnutý, Zaškrtnutý nebo 3. stav.

Propojení
(Cell Link)

 

Propojuje hodnotu vybraného zaškrtávacího políčka, přepínače, seznamu, posuvníku nebo nastavitelného pole s buňkou v listu. Je-li ve kterémkoli místě změněna hodnota, mění se i na druhém místě.

Vstupní oblast
(Input Range)

Je-li obsah stahovacího seznamu převzat z buněk v listu, určí tato volba list a oblast.

Typ výběru
(Selection Type)

Určuje typ výběru, povolený ve vybraném seznamovém ovládacím prvku: Jednoduchý, Násobný nebo Rozšířený.

Současná hodnota (Current Value)

Pro vybraný posuvník nebo nastavitelné pole tato volba určuje výchozí pozici táhla uvnitř oblasti, určené hodnotami Minimální hodnota a Maximální hodnota.

Minimální hodnota, Maximální hodnota (Minimum Value, Maximum Value)

Určuje oblast hodnot, reprezentovaných posuvníkem nebo nastavitelným polem.

Přírůstek
(Incremental Change)

Počet jednotek, o které se posune táhlo, když uživatel klepne na šipku na libovolném konci vybraného posuvníku nebo nastavitelného pole.

Změna stránky
(Page Change)

Počet jednotek, o které se posune táhlo, klepne-li uživatel dovnitř posuvníku.

Výchozí (Default)

Určuje, zda je vybrané tlačítko výchozím tlačítkem dialogového okna.

Zrušit (Cancel)

Určuje, zda se zaktivuje vybrané tlačítko, když je zrušeno dialogové okno.

Vypustit (Dismiss)

Určuje, zda se kliknutím na vybrané tlačítko zavírá dialogové okno.

Nápověda (Help)

Určuje, zda je vybrané tlačítko aktivováno, stiskne-li uživatel v dialogovém okně F1.

Typ
(Edit Validation)

Určuje, jak bude potvrzen obsah vybraného textového pole při uzavírání dialogového okna: Text, Celé číslo, Číslo, Odkaz, Vzorec.

Víceřádkové úprava
(Multiline Edit)

Určuje, zda textové pole zobrazí více než jeden řádek.

Svislý posuvník
(Vertical Scrollbar)

Určuje, zda textové pole zobrazí svislý posuvník.

Počet řádek
(Drop Down Lines)

Určuje počet řádek, zobrazených, když uživatel aktivuje vybraný stahovací ovládací prvek.

 

20. Literatura

  1. Přehled funkcí, Microsoft Excel verze 4 pro Windows. Microsoft Corporation 1992.
  2. Uživatelská příručka 1, Microsoft Excel verze 4 pro Windows. Microsoft Corporation 1992.
  3. Uživatelská příručka 2, Microsoft Excel verze 4 pro Windows. Microsoft Corporation 1992.
  4. User's Guide MS Query, Microsoft Excel 5.0. Microsoft Corporation 1994
  5. User's Guide, Microsoft Excel 5.0. Microsoft Corporation 1994
  6. Rutrle, T. : MS Excel 4.0. Praha, Grada a.s. 1992.
  7. Baloui, S. : Kompendium znalostí a zkušeností MS Excel 4.0. UNIS 1993.
  8. Vítečková, M. - Vojáček, M. - Farana, R. : Aplikace počítačů v řízení. Zpracování textů na počítači. Ostrava, KAKI/K.ATŘ 1995.
  9. Farana, R. - Vojáček, M. : Databázové systémy. Microsoft Access 1.10. Ostrava, KAKI/K.ATŘ 1994.
  10. Hátle, J - Kahounová, J. : Úvod do teorie pravděpodobnosti. Praha, SNTL 1987.
  11. Zítek, F. : Ztracený čas. Elementy teorie hromadné obsluhy. Praha, Academia 1969.
  12. Mikeska, J. - aj. : Operační výzkum (analýza). Ostrava, ES VŠB 1985.
  13. Osif, M. : Excel 4.0 snadno a rychle. Praha, Grada 1994.
  14. Uživatelská příručka, Microsoft Word verze 6.0. Microsoft Corporation 1994
  15. Vojáček,M. - Farana, R. : Aplikace počítačů v řízení. Zpracování dat na počítači. Ostrava, K.ATŘ 1994.
  16. Uživatelská příručka, Microsoft Excel verze 5.0 . Microsoft Corporation 1994.