Příspěvky uživatele


< návrat zpět

Strana:  1 ... « předchozí  7 8 9 10 11 12 13 14 15   další » ... 36

Obecně se to řeší v události Worksheet_SelectionChange otestováním průniku oblasti Target s vybranou oblastí:
If Intersect(Target, Oblast) is Nothing Then Exit Sub

Nejsem v situaci, abych se honil za supernovinkami v Excelu. Pokud si nehraji sám pro sebe, vyvíjím aplikace pro druhé, a tam musím předpokládat heterogenní prostředí z hlediska používaných verzí Excelu. Je pro mne zcela běžné, že moji uživatelé pracují s E-2007. Občas stále ještě dostávám požadavky také od lidí se starým dobrým E-XP. Z toho pohledu pro mne budou funkce, jako je MAXIFS, ještě dlouho v oblasti praktického nepoužitelna. Na druhé straně jsem rád, když se o novinkách dozvím. Proto dík za info.

Funkci MAXIFS jsem ve svém E-2016 nenašel (ne že by se mi nehodila). Vyřešit požadavek lze i bez maticového vzorce s pomocným sloupcem, kam vyberu hodnoty, splňující podmínku, a z tohoto sloupce získám požadované maximum pomocí funkce MAX (případně MAXA).

Až teď jsem si všiml, že od začátku vlákna je k dispozici obsah příslušné událostní procedury. Jev, který popisujete, nejspíš souvisí s tím, že z jiného aktivního listu došlo ke změně na listu, k němuž patří ta procedura. V důsledku toho pak špatně zafunguje příkaz
ActiveSheet.Protect Password:="HESLO"
který zamkne list, z nějž byla změna realizována. Doporučuji příkaz upravit na
ThisWorkbook.Sheets("JménoListu").Protect Password:="HESLO"

Luštíme zbytečný hlavolam. Chybí nám dvě informace:
1. jak se volá to zamykání (nejspíš Worksheet_Change, ale mohlo by to být i jinak),
2. jak je to "zamykací" makro napsané.
To snad není firemní tajemství, takže by mělo jít zveřejnit.
S vysokou jistotou bude chyba mezi klávesnicí a židlí 1 .

Dost dobře není možné, aby zamykání listů vedlo na zamčení celého sešitu. Jde o dva odlišné objekty. Nevhodně napsané, případně špatně umístěné makro ale může zamknout i listy v jiných otevřených sešitech. Bezpečné je umístění makra v rámci příslušného listu, který se má zamykat. Pokud zamykám aktivní list, měl bych si ověřit, zda je aktivní právě ten, který chci zamknout. Víc bez ukázky neumím říct.

Před časem tu byl zveřejněný dotaz na změněné chování nemodálních formulářů, které ponovu přestanou být viditelné po přepnutí na jiný sešit. Tento jev tvrdě postihl také moje doplňky, které nabízely své služby právě pomocí nemodálních formulářů.
Poměrně nedávno jsem našel odpověď na podstatu tohoto jevu na www.jkp-ads.com/Download.asp v utilitě ModelessFormOnTop. Její využití mi umožnilo plně obnovit funkčnost mých doplňků pro E-2013 i E-2016 (všechny starší Excely se chovají k nemodálním formulářům tak, že je nechávají trvale OnTop).

V běžném povídání o Excelu se pojem "tabulka" používá pro tři odlišné datové struktury. Když si odmyslím kontingenční tabulku, která má zavedený přívlastek, zbývají dva druhy. Jedním je datově (a zpravidla i graficky) uspořádaná oblast buněk. Druhým je tabulka, spojená s objektem ListObject. Oběma se říká tabulka, ale jde o pojmy s významně odlišnými vlastnostmi. Pro popisy obsahu a chování potřebuji oba pojmy odlišit. Existuje u nás zavedené terminologické odlišení těchto dvou odlišných datových struktur?

Příklad, doplněný o Alova doporučení (ale s jinými vzorci), uvádím v příloze. Realizuje jak zaplnění prázdných řádků, tak dynamické zkrácení ověřovacího seznamu o tyto řádky.
Mimochodem, postřehl jsem, že již není nutné excelské sešity v příloze balit do zipu. Příjemná změna!

Dík za podnět. Poslal jsem jádro problému. V reálu je to součást sešitu s makry, kde jsem to sdružení zbývajících jmen udělal přes Worksheet_Change a Sort. Váš vzorečkový postup se mi ale líbí víc, protože se obejde bez makra. Dík za další nápad!

Došlo mi, že grafika toho sešitu nebude ve starém Excelu fungovat dobře. Proto nedoporučuji sešit zkoušet v XP nebo v ještě starších Excelech.

Před časem jsem pro účely školení napsal sešit s názornou demonstrací práce vybraných funkcí. Zkuste se podívat na listy Skalár v příloze. Lze tím plně nahradit jak COUNTIFS, tak SUMIFS a funguje to i ve starých Excelech.

Moc nerozumím, proč, ale zabralo to! Dík za pomoc!

Potřeboval jsem vytvořit prezentační seznam, který by nabízel jména z členského seznamu, ale tak, aby tato nabídka již nenabízela jména, která byla do prezentačního seznamu dříve vložena. To má zabránit duplicitní prezentaci. Napsal jsem jednoduchý příklad, který to umí, ale má jednu divnou vlastnost. Nabídka z ověření pracuje správně, ale ověření nereaguje na ruční vstup, který se neshoduje s povolenými jmény.
Podobné chování služby Ověření dat jsem zatím nepotkal. Ví někdo, čím je to způsobeno a co se s tím dá případně dělat?

Nikdy jsem nepotkal někoho, kdo by dokázal napsat takovou zrůdu se vzorcem delším než je povolený limit. Hádám na nějakou chybu v sešitu. Bez ukázky těžko radit, co s tím.


Strana:  1 ... « předchozí  7 8 9 10 11 12 13 14 15   další » ... 36

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

On-line nástroje

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Aktivní diskuse