[ arthichoka @ 08.05.2012. 15:37 ] @
Kako da zaštitim tablicu da se više ne mogu mijenjati podaci u popunjenim čelijama nakon pritiska na save? A da se prazne čelije mogu normalno popunjavati ? |
[ arthichoka @ 08.05.2012. 15:37 ] @
[ timmy @ 08.05.2012. 16:43 ] @
1. Ukoliko zelis da zastitis podatke koji su od ranije poznati, a da dozvolis da se unose samo novi podaci - tada
1.1 Selektuj prazne celije tj. one u koje treba unositi vredsnosti 1.2 Format Cells/ Iskljuci Locked 1.3 Aktiviraj zastitu radnog lista Review/Protect Sheet 2. Ukoliko zelis da se dinamicki zakljucavaju celije tako da ne moze da se menja ono sto je unoseno u celijama 2.1 Selektuj sve prazne celije 2.2 Format Cells/ Iskljuci Locked 2.3 Ubaci sledece procedure Code: Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) ActiveSheet.Protect End Sub i za onaj list na kome se nalaze podaci Code: Private Sub Worksheet_Change(ByVal Target As Range) ActiveSheet.Unprotect Target.Locked = Target.Value <> "" ActiveSheet.Protect End Sub Naravno ova druga ideja nema bas puno smisla jer neces moci da ispravis ni onu vrednost koju si upravo uneo. Pozdrav [ 3okc @ 08.05.2012. 17:33 ] @
@timmy, ima smisla ako se držimo isključivo 'snimanja' kao okidača. Tako bi se dozvolio i određeni stepen kontrole.
Moj predlog je sličan: Code: Private Sub Workbook_Open() With Sheets(1) .Unprotect .cells.Locked = False .SpecialCells(xlCellTypeConstants, 23).Locked = true .Protect End with End Sub Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) With Sheets(1) .Unprotect .SpecialCells(xlCellTypeConstants, 23).Locked = true .Protect End with End Sub S tim da možda ne bi bilo loše definisati i kombinaciju tastera za uklj/isklj režima zaštite, kad zatreba za nešto, da ne kopaš po opcijama. [ ib.kroki @ 17.05.2012. 15:05 ] @
Ovo je jako zanimljiv kod, mogao bih ga iskoristiti u nekim situacijama ali pod uslovom da se može ispraviti eventualna greška (ko radi taj i greši).
Da li je moguće prilagoditi ovaj VBA kod? Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.
|