Pozdravljeni,
Pišem makro s katerim bi zaklepal in odklepal določene celice na vseh listih v zvezku. Makro mi sicer dela vendar se po izvajanju fokus postavi na drugi list (ponavadi na predzadnjega po vrsti v zvezku).
Vprašal bi vas, kako bi se ohranil fokus na istem listu kateri je trenutno aktiven. Gumbe z makrom imam kopirane na vseh listih.
Prilagam tudi eno mojo kodo:
Koda, ki ste jo priložili ne premika fokusa! Fokus premaknete nekje drugje. Test mojih trditev je preprost. Kopirajte to funkcijo v nek delovni zvezek in jo izvedite:
Sub test()
Dim list
For Each list In Worksheets
list.Unprotect Password:="xx"
list.Range("A1:G30").Locked = True
list.Protect Password:="xx"
Next
End Sub
Še enkrat sem poizkusi na čisto novem delovnem zvezku in mi dela enako čeprav sem prekopiral vašo. Takoj ko kliknem na gumb me prestavi na predzadnji list, razen če klikam na tem listu ostane. Če ni pravega vzroka bom poizkusil dodati vrstico, da mi izbere eno nezaklenjeno celico na aktivnem listu. Ali imate mogoče vi kak predlog? Ta makro bom dal v koledar in me vedno vrže na november .
Nekaj more biti narobe z list.Unprotect in list.Protect . Sem poizkusil z dvema gumboma v enem protect v drugem unprotect in mi deluje enako. sem pa opazil da mi prvič ne samo ob naslednjih poizkusih .
tudi z izbiro celice na aktivnem listu mi ni uspelo .
Trenutno imam samo en računalnik bom kasneje poizkusil še kje drugje mogoče je kaj z nastavitvami Oficev narobe.
To z bližnico do makrov deluje, tudi če makro vstavim v kontrolnik Active x deluje. Je pa zanimivo, če pa vstavim makro v kontrolnik obrazca pa mi preskakuje tudi na drugih računalnikih z drugačnimi Ofici.
Bom pač uporabil eno od teh rešitev ki delujejo.
Hvala, da ste mi pomagali.
Lep pozdrav!