VBA 允许在工作表受保护时创建 ListBox

我有一个电子表格,它使用代码添加包含命名范围内数据的多选列表框。从此列表中选择的内容将输出到所选单元格。

仅当我保护工作表时,我才会收到运行时错误 1004:无法获取列表框类的添加属性,因此无法添加列表框。

selectedCell 是解锁的。

如何在允许创建列表框的同时防止删除数据和公式?

部分代码如下:

Public Sub CreateCatPopUp(ByRef selectedCell As Range)
    Set catSelectCell = selectedCell
    Dim CatPopUpCell As Range
    Set CatPopUpCell = catSelectCell.Offset(1,0)
    Const CAT_POPUP_HEIGHT As Double = 300
    Dim catBox As ListBox
    Set catBox = activeSheet.ListBoxes.Add(CatPopUpCell.Left,_
                                              CatPopUpCell.Top,_
                                              activeCell.Width,_
                                              CAT_POPUP_HEIGHT)
zws138 回答:VBA 允许在工作表受保护时创建 ListBox

如果您将 UserInterFaceOnly 设置为 true,它将保护用户界面并允许使用宏。

我将以下代码添加到 Workbook_Open 事件中,现在工作表上的所有 vba 都在工作。

ActiveSheet.Protect UserInterFaceOnly:=True
本文链接:https://www.f2er.com/89410.html

大家都在问