Podmφn∞nΘ formßtovßnφ a souΦty, ov∞°enφ dat
Funkce KDYÄ, logickΘ funkceAbychom mohli ov∞°ovat vstupy a p°φpadn∞ je zahrnovat do souΦtu, je t°eba znßt zßkladnφ principy vklßdßnφ podmφnek. Pro tyto ·Φely slou₧φ p°edevÜφm funkce KDYÄ. Jejφ syntaxe, jak asi vφte, je: KDYÄ(podmφnka; hodnota Φi vzorec v p°φpad∞ spln∞nφ podmφnky; hodnota Φi vzorec v p°φpad∞ nespln∞nφ podmφnky)Do mφsta v∞tvenφ lze takΘ dosadit dalÜφ "rozcestnφk" KDYÄ. Takto m∙₧e b²t vno°eno a₧ sedm "k°i₧ovatek Y". Pokud luÜtφte n∞kolik vno°en²ch funkcφ v seÜitu od druhΘ osoby, doporuΦuji nakreslit si v²vojov² diagram. Abychom ulehΦili funkci KDYÄ a pomohli ji rozÜφ°it, upneme pozornost k logick²m funkcφm A, NE a NEBO. Funkce A(podmφnka 1; podmφnka 2; ...) vracφ hodnotu PRAVDA, jestli₧e jsou souΦasn∞ spln∞ny vÜechny nßmi zadanΘ podmφnky. Funkce NE(logickß hodnota) obracφ v²sledek, kter² je jφ p°edßn v podob∞ PRAVDA Φi NEPRAVDA. Funkce NEBO(podmφnka 1; podmφnka 2; ...) vracφ PRAVDA, pokud je spln∞na alespo≥ jedna zadanß podmφnka. Podφvejte se na p°φklady. P°φklad z °ßdku 12 je trochu specifick², nebo¥ vynechßvß p°φmΘ u₧itφ funkce KDYÄ (viz °ßdek nφ₧e). S tφmto zßpisem se Φast∞ji setkßte u podmφn∞nΘho formßtovßnφ. Vzorec z °ßdku 14 doporuΦuji nepou₧φvat. S funkcφ STEJN╔ jste se ji₧ mohl setkat d°φve p°i prßci s textem. Funkce ZVOLIT pak naznaΦuje mo₧nΘ u₧itφ v p°φpad∞, kdy tvo°φme podmφnky na zßklad∞ kladn²ch cel²ch Φφsel a vlastn∞ je takovou jednoduchou ukßzkou, kterou znajφ programßto°i VBA jako SELECT..CASE, co₧ si m∙₧ete p°edstavit jako k°i₧ovatku s libovoln²m mno₧stvφm ze st°edu jdoucφch ulic narozdφl od KDYÄ, p°edstavujφcφ pouze tvar "Y". Pozn. 1: Je-li v p°φkladu zmφn∞no, ₧e se jednß o maticov² vzorec, pak pro tuto chvφli postaΦφ v∞d∞t, ₧e takovΘ vzorce se potvrzujφ stiskem Ctrl+Shift+Enter mφsto klasickΘho ENTER. Pozn. 2: Nejste sami, komu funkce NE "ne a ne" jφt na rozum. Ale! N∞kdy je jednoduÜÜφ stanovit podmφnku pro opak toho, co chceme, resp. dopln∞k mno₧iny a pak p°ed podmφnku postavit NE. Vzpome≥te si na to, a₧ budete sed∞t nad algoritmy pro VBA! N∞co ze ₧ivota? Kdy₧ budete chtφt najφt jeden velk² korßlek mezi tisφci mal²mi, pou₧ijete sφto. No a to je p°eci °eÜenφ vychßzejφcφ z podstaty mal²ch korßlk∙, tj. pracujeme s mal²mi korßlky, abychom zφskali to, co hledßme - korßlek velk². Funkce pro ov∞°enφ obsahuN∞kdy m∙₧eme pot°ebovat pracovat jen s daty urΦitΘho typu (textovΘ bu≥ky, ΦφselnΘ bu≥ky, bu≥ky prßzdnΘ, ...). Pro tyto ·Φely slou₧φ informaΦnφ funkce typu "JE". Abyste v∞d∞li, co m∙₧ete oΦekßvat, prohlΘdn∞te si nßsledujφcφ p°φklady. ╪ßdek 13 si obzvlßÜt∞ vryjte do pam∞ti, nebo¥ prßzdn² °et∞zec (dvojφ uvozovky vedle sebe) se vyskytuje v bu≥kßch Φasto (nap°φklad jako v²sledek v∞tvenφ funkce KDYÄ). V nßsledujφcφ ukßzce je oblast A2:A17 pojmenovßna "data". |
Podmφn∞nΘ formßtovßnφ je postaveno na otßzce "KDYÄ", p°esto₧e vlastnφ funkce KDYÄ se t°eba ani v zßpisu neobjevφ. TakovΘ formßtovßnφ definuje pouze vizußlnφ podobu pφsma, pozadφ a ohraniΦenφ v p°φpad∞ spln∞nφ kritΘriφ. Volba se skr²vß pod menu Formßt / Podmφn∞nΘ formßtovßnφ....
Lze porovnßvat obsah bu≥ky s hodnotou (hodnotami v p°φpad∞ rozmezφ) nebo vlo₧it vlastnφ vzorec. Maximßln∞ lze vyu₧φt t°φ nezßvisl²ch podmφnek. Nenφ-li podmφnka spln∞na, formßt bu≥ky se automaticky p°enastavφ do podoby, jakou jste bu≥ce dali v tabulce listu. Kopφrujete-li formßt bu≥ky, pak s nφm kopφrujete i podmφn∞nΘ formßtovßnφ. Je-li v podmφnce obsa₧en relativnφ odkaz, pak je tento odkaz takΘ relativn∞ pou₧it v ostatnφch bu≥kßch. Jak tedy nadefinovat stejnou podmφnku pro sousedφcφ bu≥ky?
|
K podmφn∞nΘmu sΦφtßnφ, tedy sΦφtßnφ polo₧ek, kterΘ spl≥ujφ urΦitou podmφnku, slou₧φ p°edevÜφm funkce SUMIF (p°φpadn∞ jen samotnß SUMA) a funkce COUNTIF. ┌plnou syntaxi zßpisu doporuΦuji nastudovat v nßpov∞d∞. My se vrhneme p°φmo na praktickΘ p°φklady.
P°φklad sb∞ru ukazuje, jak pracovat s tabulkou, kterou jste obdr₧eli od druhΘ osoby. Takovß forma tabulky nenφ p°φliÜ vhodnß a jejφ lepÜφ zpracovßnφ najdete v p°ilo₧enΘm seÜitu. Tu sprßvnou "Ütßbnφ kulturu" pak podobn²m tabulkßm dßvajφ souhrny a kontingenΦnφ tabulky, ale to jsme ji₧ mimo rßmec dneÜnφho tΘmatu. |
Ov∞°ovßnφ dat slou₧φ k minimalizaci p°eklep∙ a usnad≥uje v²b∞r platn²ch hodnot zadßvan²ch do bu≥ky. Volbu najdete pod menu Data / Ov∞°enφ.
Pro data m∙₧ete urΦovat dolnφ a hornφ mez, nastavit dΘlku °et∞zce, nechat vybφrat polo₧ky ze seznamu a v neposlednφ °ad∞ omezit vstupy podle vlastnφho vzorce. Asi nejΦast∞jÜφ volbou je Povolit: seznam. Zdrojem je pak seznam polo₧ek odd∞len²ch navzßjem st°ednφkem, odkaz na oblast listu danou adresou nebo jejφm jmΘnem a v p°ilo₧enΘm seÜitu naleznete i "Üvindl" - seznam vzorc∙. Dialog na zßklad∞ vstupnφch hodnot je dßn Φasto opomφjen²mi nastavenφm na kart∞ ChybovΘ hlßÜenφ. Prostudujte i kartu Zprßva p°i zadßvßnφ. Styl "stop" je pro zadavatele dat koneΦnou instancφ, kdy mu nenφ dovoleno zadat jinß data ne₧ povolenß. Ostatnφ dv∞ Φinφ z ov∞°enφ dat jakousi databanku dat, ze kterΘ u₧ivatel Φerpat m∙₧e, ale nemusφ. Mal² trik: Zvolte Nastavenφ / Povolit: jakoukoliv hodnotu, dßle zruÜte zaÜkrnutφ pro zobrazenφ chybov²ch hlßÜenφ na kart∞ Chybovß hlßÜenφ a vypl≥te obsah zprßvy na kart∞ Zprßva p°i zadßvßnφ. Trik slou₧φ k zobrazenφ jakΘsi nßpov∞dy p°i klepnutφ na bu≥ku. V²hodu oproti komentß°i poznßte ve chvφli, kdy se bu≥ka vyskytuje na kraji okna. Komentß° se beze studu rozbaluje mimo viditelnou Φßst obrazovky, tato nßpov∞da je stßle viditelnß (MS Excel 2000). Ov∞°ovßnφ dat mß charakter akce "akce-reakce", proto popis psanou formou je komplikovan² a nebude zde detailn∞ probφrßn. U₧iteΦnΘ p°φklady najdete v p°ilo₧enΘm seÜitu. Pouze jejich testovßnφm si je osvojφte. Jen si dovolφm pßr zßsad:
Bohu₧el...Styl "stop" nikterak nezabrßnφ vstupu kopφrovßnφm hodnot. A nejen₧e nezabrßnφ, kopφrovanß data sma₧ou(!) veÜkerß ov∞°enφ vstupu danΘ bu≥ky. (Nßprava tohoto nedostatku je mo₧nß, ovÜem podle vÜeho jen s pomocφ VBA.) S problΘmy jsem se takΘ setkal, kdy₧ jsem soubor vytvo°en² p∙vodn∞ v Excelu 2000 otev°el ve verzi 97. Ov∞°enφ prost∞ zmizelo... |