解锁由单元名称Office 2007选择的excel中的单元格范围

时间:2010-09-02 15:29:08

标签: excel vba excel-vba ms-office

我有3个单元格相互合并,并以给定的单元格名称引用(例如“foo”)。

我现在想要使用locked属性解锁这些单元格。

以下代码中的锁定有效,但该值将成功分配给单元格:

Workbooks(loadedSheetName).Worksheets("foo").Range("bar").Locked = False
Workbooks(loadedSheetName).Worksheets("foo").Range("bar") = "foo value"

通过“坐标”引用单元格会起作用,但对我来说不是一个选项:

Workbooks(loadedSheetName).Worksheets("foo").Range("B3:E3").Locked = False

是否有可能按名称选择一些合并的单元格并将locked属性设置为false?

2 个答案:

答案 0 :(得分:3)

以下代码在Excel 2007中正常运行


Sub aa()
    Dim ce As Range
    Application.ScreenUpdating = False ''# screen flicker off
    ActiveSheet.Unprotect Password:=""
    For Each ce In Range("rng")
        ce.MergeArea.Locked = "False"
    Next ce
    ActiveSheet.Protect Password:=""
End Sub

HTH!

答案 1 :(得分:0)

您不需要遍历Range中的每个单元格。

简单地...

 Range("myRangeName").Select
 Selection.Locked = False