Odpověď je velmi prostá, stejně jako její použití. Jde o kombinaci dvou základních technik Excelu:
1. OVĚŘENÍ DAT: Vybrat oblast pro kontrolu
2. Karta Data / Ověření dat / Nastavení:
Povolit: - volba Seznam
Zdroj: - 1;2;3 (tedy jakékoliv hodnoty, oddělené středníky)
OK
3. PODMÍNNÉ FORMÁTOVÁNÍ:Vybrat oblast pro podmíněné formátování
4. Karta Domů / Podmíněné formátování /Správa pravidel / Nové pravidlo:
zvolit: Určit buňky k formátování pomocí vzorce
Vložit vzorce s rozlišením podle řídící hodnoty (nejlépe se inspirovat z mého příkladu).
Vše potvrdit a otestovat správnost chování.
Obě techniky jsou užitečné, obě jsou popsané v nápovědě, obě je dobré se naučit
to Jojofx:
Domnívám se, že vidím přesně ten typ dialogu, který není dobré vést. Pokud je dotaz na začátku neurčitý a tazatel v průběhu dialogu mění zadání, odpovídá se velmi špatně. Stojí to moře času a nakonec stejně platí něco úplně jiného než na začátku. Dodatečné doplňování opomenutých podmínek řešení patří do okruhu špatně rozmyšlených dotazů. Často stačí, abych se donutil svůj dotaz dostatečně precizovat, a na polovinu otázek si při tom odpovím sám. Otázka by měla být pokud možno přesná a v případě složitějších dat by měla být doložena příkladem. Pak i odpověď bude zpravidla jasná a konkrétní.
Neoblomné trvání na těžko realizovatelných představách zpravidla vede na pracná a složitá řešení. V příloze je řádově jednodušší řešení s využitím ověření dat a podmíněného formátu. I s vymyšlením m to trvalo cca 15 minut.
Vybarvit buňky podle výběru v comboboxu samozřejmě jde. Výsledek zadání z comboboxu se promítne do propojené buňky a tu už lze vyhodnotit např. pomocí podmíněného formátu. Když propojenou buňku schovám pod příslušný combobox, může to dopadnout docela úhledně. Ale stále platí, že samotný combobox z aktivních prvků formuláře neobarví ani David Copperfield
Co brání použití autofiltru?
Tohle je asi tak maximum rozumného, co si umím představit pro použití barev s prvky formuláře. ComboBoxy jsem posadil na obdélníky z automatických tvarů s obarveným okrajem. V propojených buňkách jsem zase nastavil barvu písma podle těch obdélníků. Z podřepu jsem udělal přibližně to, co nabídl elCHa.
Ovládací prvky formuláře patří k nejstarší výbavě listů. Jejich logika je velmi prostá a grafická výbava je velmi skromná. Ovládací prvky formuláře nikdy nešlo barevně měnit. Od těchto prvků nechtějte něco, co nikdy neuměly.
Problémem každého fóra o Excelu, které poskytuje rady druhým, je situace, kdy nelze odpovědět bez ukázky a ukázku nelze poslat kvůli důvěrnému obsahu sešitu.
V příloze se nachází MixerX, který by měl být schopný popsaný rozpor překlenout. V principu umožňuje nahradit důvěrná data v cílové oblasti náhodně uspořádanými daty ze zdrojové oblasti. MixerX je surový nástroj a neptá se na obsah cílové oblasti. Na druhé straně plně zachovává nastavené vlastnosti buněk v cílové oblasti. Nikdy bychom neměli mixerem míchat jablka s hruškami. Nikdy bychom neměli pro cílovou oblast použít buňky se vzorečky (vzorečky bychom tím nemilosrdně zlikvidovali).
Jinak se mixování meze nekladou. Cílová oblast může mít jiný tvar než ta zdrojová. Podmínkou však je, že cílová oblast nesmí mít víc buněk než má zdroj. Zdrojová oblast může ležet na jiném listě a dokonce v jiném, aktuálně otevřeném sešitě. Přesně to samé platí i o cílové oblasti. Pokud současně otevřu mixer, zdrojový sešit a cílový sešit, mohu data ze zdrojového sešitu pomocí mixeru přenést v náhodném sledu do určené oblasti v cílovém sešitě. Ale také mohu jen promíchat existující data na místě, když zvolím shodnou zdrojovou i cílovou oblast.
Smyslem všeho je získat demonstrační kopii sešitu, jehož funkčnost je nenarušená, ale který obsahuje nezneužitelná data. Takový sešit pak lze s lehkým svědomím prezentovat.
MixerX lze využít i jinak. Všichni víme, že napsaný sešit nelze odzkoušet bez dat. Vymýšlení cvičných dat je manuální nádeničina. Mixer nabízí možnost, jak použít pro tento účel příbuzná data ze svých jiných sešitů. Domnívám se dokonce, že tento způsob využití mixeru je dokonce významnější, než demonstrační modifikace sešitů s důvěrnými daty.
Princip, jak to navrhuje elninoslov, plně akceptuji. Jen bych jinak hledal místo pro vzorec. Když bude tabulka začínat v buňce LHRoh, pak lze polohu pro umístění vzorce určit
Radek = LHRoh.CurrentRegion.Rows.Count + 1
Sloupec = LHRoh.CurrentRegion.Columns.Count
a buňku volat
Cells(Radek, Sloupec)
Bez VBA mne nenapadá nic. Pomocí VBA by to snadno zvládla kombinace události Worksheet.SelectionChange např. s TextBoxem, Který by událost plnila a také zobrazovala/skrývala. Něco takového už jsem dělal a dopadlo to uživatelsky přívětivě.
Přístup do zavřeného sešitu je velká benevolence od Excelu. Podle všeho, co vím, jde výhradně o přístup Read Only k hodnotám buněk. Žádné jiné aktivity uvnitř zavřeného sešitu podle mne provádět nelze. Umíte si představit, jak by se mohli na vašich zavřených sešitech vyskotačit různí vtipálkové?
Rada na přejímání podmíněného formátu zpravidla zní tak, že přijímající buňka má zopakovat testy ze zdrojového podmíněného formátu (nikoliv celý zdrojový podmíněný formát) a podle jejich výsledu nastavit svůj vlastní formát. Je to nepoměrně jednodušší, než rozluštit samo podmíněné formátování. Pro XP jsem se o to kdysi pokusil. S novými možnostmi podmíněného formátování E-2007 už jsem to už ani nezkoušel.
Druhá možnost je místo podmíněného formátování použít událost Change a měnit barvy přímo v buňce. Pak mohu metodou Copy přenést buňku i s jejím naformátováním. Znám lidi, kteří podmíněné formátování obcházejí právě tímto způsobem.
Většinou lidem nevadí chytit spodní pravý úchyt a táhnout. Samozřejmě to jde udělat jedním příkazem pomocí VBA a ani se na to nemusí psát makro. A když makro napíšu, mohou se vzorce v celé oblasti měnit dynamicky podle algoritmu. Jde jen o to, k čemu má ta změna sloužit (kromě toho, že se v buňkách asi změní výsledky).
to DAAL:
dík za čerstvý vítr do stojatých vod VBA/VBE. O VSTO už pár let vím, na stole v knihovničce mi po léta tiše odpočívá knížka o VisualBasic.NET. Nikdy jsem se ale nedostal do stavu aktivní nouze s VBA, abych se na VSTO vrhl jak studiem, tak nákupem SW. Mám pocit, že už bych se výsledků vloženého úsilí u sebe nedožil.
Sám za sebe říkám, že už to s VBA doklepu. Mám pár aplikací pro natěšené zákazníky rozdělaných a když k tomu připočtu provoz tady na fóru, opravdu se nenudím.
DAAL je v tom směru daal :-). Je to dobře a je taky dobře, že tady potkávám ctitele VSTO.
Na přímou otázku přímá odpověď: takhle to podle mne nejde. Protože ale v Excelu je možné skoro všechno, určitě by to šlo obelstít oklikou přes VBA. Jde o to, jestli to za to stojí...
Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.
Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.