gnusselt καλημέρα!
Δεν είναι εκ των προτέρων δυνατό να ορίσεις τα κλειδωμένα κελιά σε ένα Φύλλο του Excel.
Μπορείς να κάνεις εύκολα αυτό που θες, μέσω VB, με τη συνάρτηση Worksheet_Change. Κατέβασε το συνημμένο ή πέρνα την παρακάτω συνάρτηση στον κώδικα του Φύλλου που σε ενδιαφέρει:
---
Private Sub Worksheet_Change(ByVal Target As Range)
Dim pass As String
pass = "password"
If Target.Cells.Count > 1 Or IsEmpty(Target) Or Target.Address <> "$A$1" Then Exit Sub
If Target.Address = "$A$1" Then
If ActiveSheet.ProtectContents = True Then
ActiveSheet.Unprotect Password:=pass
End If
Range("a:a").Locked = False
Range("a:a").Interior.ColorIndex = 0
Cells(1, 1).Interior.ColorIndex = 45
If Val(Cells(1, 1)) > 1 Then
Range(Cells(2, 1), Cells(Int(Val(Cells(1, 1))), 1)).Locked = True
Range(Cells(2, 1), Cells(Int(Val(Cells(1, 1))), 1)).Interior.ColorIndex = 36
End If
End If
ProtectSheet:
ActiveSheet.Protect Password:=pass
End Sub
----
Όπως ξέρεις ένα κλειδωμένο κελί κλειδώνει αληθινά μόνο όταν το Φύλλο είναι προστατευμένο. Όρισε το password σου στη μεταβλητή mypass και δοκίμασε τη συνάρτηση σε ένα αρχικώς ξεκλείδωτο Φύλλο.
Αφού δώσεις τιμή στο κελί Α1, η συνάρτηση θα κλειδώσει όλα τα κελιά από Α2 έως εκεί που υποδεικνύει ο αριθμός στο Α1 και θα τα χρωματίσει με κίτρινο.
Στη συνέχεια θα προστατεύσει το φύλλο με password ίσο με αυτό που όρισες.
Για τιμή Α1 < 2, πχ 0 ή 1, το Φύλλο ξεκλειδώνει ολόκληρο.
Δοκίμασέ το!
Επικοινώνησε μαζί μας για περαιτέρω δωρεάν συμβουλές επί του θέματος :
http://www.extreme-excel.net/tiprequest.php
kleidoma.zip