Skúsim zjednodušene: To, že ho odomknete cez Revíziu, nieje problém, problém by bol, ak by ste ho znovu cez Revíziu zamkol. Zamknutie zakazuje všetko, okrem výberu buniek. Zamykanie cez makro má jeden parameter navyše
UserInterFaceOnly
,ktorý zabezpečí, že všetko je zamknuté len pre užívateľa, nie pre makro. Excel cez Revíziu tento parameter nezadá, teda zamkne list aj pre makro, ktoré potom samozrejme nebude fungovať.
Ja som počítal s tým, že sa nebude nejak často meniť cena, alebo vzorce a pod, ale aj tak som tam zakomponoval, že stačí súbor uložiť, a je zase korektne zamknutý (s tým parametrom povolenia úprav pre makro).
Teda si ho môžete odomknúť, len ho zamknete tak, že súbor uložíte.
Celý kód si môžete pozrieť keď stlačíte ľavý Alt+F11, vľavo hore si vyberiete Váš VBAProject(názov súboru), a stlačíte to + a vypýta si to heslo do makra, ktoré je teraz
abc359
Toto heslo si teraz môžete zmeniť na iné v Tool - VBAProject Properties - Protection - dole 2x vyplníte nove heslo do makra - OK - uložte súbor.
Vo všetkých častiach, je nejaká časť kódu:
Microsoft Excel Objects - Stoly (Stoly)
Microsoft Excel Objects - ThisWorkbook
Forms - frmPass
Modules - modStoly
na všetky stačí dvojkliknúť, len na frmPass treba pravý klik a View Code.
V tom poslednom modStoly, sú na začiatku 2 konštanty
PSW = "abc359"
PSWDB = "359"
PSW - je heslo, ktorým je zamknutý list (toto heslo použijete aj pri odomykaní v Revízia)
PSWDB - je heslo, ktoré sprístupňuje vyčistenie databáze
Môžete si ich tu zmeniť, súbor po zmene uložte. Ale pozor, pred zmenou hesla PSW je potrebné list najskôr odomknúť pôvodným heslom PSW (buď v Revízia, alebo spustením makra Odomknut v module modStoly (kurzor do makra Odomknut, a F5). Toto ale predpokladám urobíte tak raz.
Počítanie ceny : Je to nastavené na zaokrúhlenie dole. Teda vynechá desatinnú časť. Neviem ako to chcete, zatiaľ som to urobil takto.
Jediné čeho jsem si všiml po opětovném zamčení, že konečná cena nebyla fixovana a po opětovném zapnutí stolu se nulovala.
Tomuto nerozumiem. Skúste popísať inak.
Po stlačení stop sa suma a časy nenulujú naschvál (iba po stlačení START), aby personál hneď videl výsledok, aj keď ten vidí vždy aj v spodnej časti, ale tá sa dá omylom nascrolovať. Kľudne sa to dá urobiť tak, že po STOP sa všetko zapíše do databázy dole, a hore sa to okamžite zmaže. To nieje problém.
Urobil som ešte nejaké malé korekcie.
Rozmýšľam ešte, že by som tlačítko Vyčistit nahradil za Administrace, kde by bola aj možnosť jednoduchého odomknutia/zamknutia listu, zmeny hesiel, vyčistenia, ale už sa mi nechce.
A celé makro sa mi už vôbec nechce popisovať vysvetľujúcimi popismi ...
Příloha: 36311_finalnitabulka-2.xls (111kB, staženo 34x) citovat