【问题标题】:Protect shapes so users can modify but not delete保护形状,以便用户可以修改但不能删除
【发布时间】:2013-07-03 08:49:46
【问题描述】:

我有一个工作簿,其中包含一些我不希望用户轻易删除的形状。它们与索引相关联,而索引号与其他一大堆东西相关联。

但是,用户需要移动形状并调整它们的大小。

如何在工作表上设置保护以允许用户修改形状但不能删除它们?

在 VBA 中执行此操作的能力也会很有用,因为我的一些宏取消保护然后保护单元格。

【问题讨论】:

  • 可能this 并覆盖删除方法?
  • 我不确定这对我有什么帮助。可能是因为我无法跟随它,但它是我试图保护的形状,而不是细胞。你能再解释一下吗?谢谢
  • 我不会为你做作业。这个想法是相似的-选择形状>右键单击->格式化形状>属性>锁定复选框。然后保护工作表,您不能删除它们,但可以移动它们等。另一种方式是使用 VBA 设置哪些属性被锁定,哪些属性不被锁定

标签: excel vba shapes protection


【解决方案1】:

这是不可能的。

您可以使用此代码锁定工作簿中的所有形状

Private Sub Workbook_Open()
  ActiveSheet.Protect Password:="test", userinterfaceonly:=True
  Dim shape As shape
  For Each shape In ActiveSheet.Shapes
    shape.Locked = True
  Next
End Sub

或者您在 dot.net 中为 Excel 构建一个插件。 此博客描述了如何对形状执行此操作,并且您可以在其中使用事件来覆盖删除。

create excel events for shapes 或者 Microsoft excel shape events

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-18
    • 1970-01-01
    • 2013-03-24
    相关资源
    最近更新 更多