< návrat zpět

MS Excel


Téma: vynucení spuštění makra rss

Zaslal/a 8.12.2011 9:38

Dobrý den
měl bych takovou prosbu.Potřeboval bych nějakou proceduru, která donutí uživatele při otevření souboru povolit makra.Pokud by je chtěl zamítnout ( nebo je měl třeba už v nastavení vypnuté), soubor by se neotevřel.
předem děkuji

Zaslat odpověď >

icon #006656
Poki
Ze by se soubor neotevrel - to nejde.
Uzivatel si zkratka vzdycky bude moci vybrat, ze makra nepouzije, s tim se neda nic delat.
Urcita varianta existuje - pri zavreni sesitu se vzdy vsechny listy skryji (makrem) a necha se je jen, ktery uvidi uzivatel, kde bude napsano, at povoli makra.
Po povoleni maker se spusti procedura, ktera listy zpristupni uzivateli.
Na konci prace se vsak sesit musi vzdy ulozit!!! Aby mohly byt skryty listy...citovat
#006657
avatar
ano, o této variantě jsem už slyšel.Jenže s tím souborem pracuje celkem dost uživatelů, je obsáhlý a pravomoce některých taky, jenže někteří se rádi šťourají tam kde nemají a není čas to pořád po někom opravovat.
Napadla mě ještě jedna věc.
Co kdyby byl soubor zcela zaheslován pro otevření, při povolení maker by procedura zadala heslo a soubor otevřela,v opačném případě by nejspíš vyskočila chybová hláška a soubor by zůstal uzamčen.
je to jen teorie, která mě právě napadla 1citovat
icon #006658
Poki
Ano - to jde, jen tim zamcenim sesitu myslite asi zamceni listu.
Porad ovsem je ten problem, ze pred zavrenim sesitu musite opet listy uzamcit a tim padem potom ulozit, takze pred kazdym zavrenim sesitu musite sesit ulozit..citovat
#006731
Stalker
Ahoj našel sem na CD přiloženém ke knize o VBA soubor, který popisuje Poki v prvním přízpěvku, i to uložení při zavření sešitu je tam vyřešené. Tak se na to koukni, možná Ti to k něčemu bude.
Příloha: rar6731_09_05_unablewithoutmakros.rar (53kB, staženo 29x)
citovat
icon #006749
Poki
Mozna jsme si neporozumeli - samozrejme, ze lze ulozit sesit pri zavreni, ale protoze je to v tomto pripade nutnost, tak to muze zpusobit i jiste pozite.
Protoze pokud udelate nejake upravy (makrem je nelze vzit zpet), tak uz nemate tu moznost proste jen sesit zavrit (a protoze neulozite zmeny), tak ho proste jen znovu otevrit...
To je problem, o kterem jsem mluvil.
Pokud chcete tedy ouzit proceduru _Before_Close, musite si byt jisti, ze pred zavrenim uvedete sesit do puvodniho stavu, coz muze byt problem 2citovat

Uživatelské menu

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

Menu

Formulář Faktura

Formulář Faktura IV

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

Helios iNuvio

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.

On-line nástroje