Pozdrav in srečnga pa zdravga ter uspešnega...
Zanima me, če bi lahko naredil makro, ki bi zaklenil celico takoj, ko bi uporabnik vnesel podatek v njo. Na voljo bi bile le določene celice (ostale bi bile zaščitene standardno z zaščito lista). Je to težak zalogaj za excel? Zaklep mislim v smislu podobne rešitve kot zaklep celice (lock) oz. zaščita lista?
zaklep celice po vnosu podatka
Re: zaklep celice po vnosu podatka
Srečno in uspešno tudi vamngc2392 napisal/-a:Pozdrav in srečnga pa zdravga ter uspešnega...
Bolj ali manj trivialen... Spodaj imate želeni makro, kjer je ideja v tem, da so celice A1:B10 na začetku odščitene. Čim v katero izmed njih nekaj zapišete se takoj zaščiti in vnos vanjo ni več možen - torej natanko to kar želite:ngc2392 napisal/-a:Je to težak zalogaj za excel?
Koda: Izberi vse
'
' www.matjazev.net
' januar 2011
'
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
' ali je pravo območje
If (Intersect(Target, Range("A1:B10")) Is Nothing) Then Exit Sub
' ali je celic polna
If (Trim(Target.Value) = "") Then Exit Sub
' odklenem zvezek
ActiveSheet.Unprotect
' zaščitim celico
Target.Locked = True
' zaklenem zvezek
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub
lp,
Matjaž Prtenjak
Administrator
Matjaž Prtenjak
Administrator
Re: zaklep celice po vnosu podatka
Okej, hvala, super. Malce gledam naprej... in imam podvprašanje: vrstica "(If (Intersect(Target, Range("A1:B10")) Is Nothing) Then Exit Sub" se lahko kar skopira v smislu dodatnih celic (tukaj je označeno območje), če bi vsaka vrstica definirala svojo celico? Da bi v zgornjem ukazu recimo bilo deset takih vrstic z drugo celico?
Re: zaklep celice po vnosu podatka
Da, lahko kopirate celotno vrstico ali pa popravite območje tako, da posamezne celice naštejete:
Koda: Izberi vse
range("A1,C2,B10:E12;A14").Address ' primer
lp,
Matjaž Prtenjak
Administrator
Matjaž Prtenjak
Administrator