Pozdravljeni
Na list rišem veliko število oblik (rodovnik - predniki) s podatki in povezavami. Postopek večkrat ponovim, glede na izbrano osebo.
Imam pa na listu tudi kvadrat, v katerem je napisano navodilo. Skrijem ga tako, da ga pozicioniram daleč desno. Pri zahtevi "Navodilo" ga premaknem v vidni del lista. Težava je v tem, da je navodilo postavljeno v ozadje. Razumljivo. Ostali gradniki so bili kreirani/narisani kasneje.
Poskušal sem se rešiti z ukazom:
Pozdravljeni
Vrednost spremenljivke je pravilna. Sem pa imel zaščiten list. Ko sem pred ukazom ZOrder preklical zaščito, pa deluje.
Zanimivo pa je, da pri ukazu ZOrder, ki se zaradi zaščite ni izvedel, ni bilo napake kot npr. pri poskusu spremembe vrednosti zaščitene celice.
Nekaj podobnega se mi je pred časom dogajalo ( ne vem več točno kateri ukaz), pa se mi je "samo" rešilo. Sem pa tudi takrat nekaj "telovadil" z zaščito lista. Ukaza "On Error Resume Next" ni v kodi.
V kakšnem primeru se še lahko zgodi, da ukaz ni izveden, pa ni prekinitve?
Zadeva no tako preprosta, kot si jo vi predstavljate. Vi ste napisali, da se ukaz "ni izvedel". Seveda se je izvedel! Ukaz ne more naknadno preverjati ali se je nekaj potem tudi res zgodilo.
Če vam kot primer podam "izris kroga". Obstaja ukaz za izris kroga in ko ga izvedete, se bo na ekranu izrisal krog. Vendar ta ukaz ne preverja ali se je na ekranu potem tudi zares izrisal krog. Kje pa naj se to ustavi? Ali naj potem ukaz preveri da je prižgan monitor?
Vi uporabljate zaklepanje lista in vedeti morate da 90% zadev na zaklenjenem listu ne deluje in pika. To je to.
Kadar uporablajte zaklepanje listov se navadite sledečega načina dela:
* Postavite zaščito On Error GoTo xxxx
* odklenite list
* naredite vse kar je potrebno narediti
* zaklenite list
* pojdite iz funkcije
xxx
* Izpišite napako - če je program prišel do sem se je zgodilo nekaj narobe
* zaklenite list