等級(jí):初學(xué)者
-
積分:0
-
財(cái)富值:2.00
-
身份:普通用戶
我想實(shí)現(xiàn)的功能是:
選中某一單元格或區(qū)域,點(diǎn)右鍵“鎖定”,然后選中部分就被鎖定了(可以標(biāo)示背景色以區(qū)分被鎖定狀態(tài));
再次選中已被鎖定的區(qū)域,點(diǎn)右鍵“解鎖”,選中部分就被去鎖定了。
我有一個(gè)加載宏,但是使用起來,還是不夠方便。希望大俠們加以修改,以更加便于使用。
代碼如下:
Sub lockadd()
For Each myctl In Application.CommandBars("cell").Controls
If myctl.ID = 888 Then Exit Sub
Next
With Application.CommandBars("cell").Controls.Add(ID:=888, before:=1)
.Caption = "鎖定單元格"
.BeginGroup = True
.OnAction = "lockRange"
End With
End Sub
Sub Allreset()
Application.CommandBars("cell").reset
End Sub
Sub unlockadd()
For Each myctl In Application.CommandBars("cell").Controls
If myctl.ID = 888 Then Exit Sub
Next
With Application.CommandBars("cell").Controls.Add(ID:=888, before:=1)
.Caption = "解鎖單元格"
.BeginGroup = True
.OnAction = "lockRange"
End With
End Sub
Sub lockRange()
On Error Resume Next
ActiveSheet.Unprotect
Dim myrange As Range
Set myrange = Selection
If myrange.Locked Then
myrange.Locked = False
myrange.Interior.ColorIndex = xlNone
Else
myrange.Locked = True
myrange.Interior.ColorIndex = 20
End If
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub
等級(jí):傳說級(jí)人物