Zaslal/a Vovka 13.9.2015 16:52
Při experimentování s formulářem o proměnné velikosti jsem narazil na zvláštnost, pro kterou neznám vysvětlení ani programátorsky čisté řešení.
Pokud sešit zavolám k jinému otevřenému sešitu, zobrazí se v tom dosud aktivním sešitě můj zavolaný nemodální formulář. To funguje dobře, to chci.
Zavřením nemodálního formuláře křížkem vpravo nahoře se zavře i celý sešit s formulářem. I to je dobře, tak jsem se to snažil napsat.
Potíž nastala, když jsem se po zavření pokusil opět svůj sešit otevřít (aniž bych mezitím přerušil práci s Excelem). Z důvodů, které jsem neodhalil, vznikne při tom chyba 429. Po přeskočení chyby se sešit otevře, ale bez nového otevření formuláře. Během hledání příčiny vadného chování jsem s překvapením zjistil, že opakovaný pokus o otevření už projde bez závady. A tak nyní mám v událostní proceduře Workbook_Open
následující nehezkou konstrukci
On Error Resume Next
PoloPruh.Show 0
If Err <> 0 Then
PoloPruh.Show 0
End If
Prostě, když se to nepovede napoprvé, tak to zkusím podruhé - a uspěji. Nic ošklivějšího jsem snad nikdy nenapsal. Protože to ale funguje a já lepší řešení nemám, tak to tam je.
Pokud někdo odhalí příčinu a najde čistší řešení, udělá mi tím radost. Inkriminovaný sešit je v příloze.
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.