粘贴来自"较新"的数据后,受保护的Excel工作簿被破坏工作簿

时间:2015-09-28 08:30:39

标签: excel vba excel-vba copy-paste protection

在受保护的工作表中给出一个带有未锁定单元格的Excel工作簿。

如果我从目标工作簿之后打开的另一个工作簿中复制一个单元格,并将其粘贴到未锁定的单元格,则会被锁定,我无法执行任何操作使用它除了撤消粘贴操作。

另一方面,如果在目标之前打开源工作簿,则复制粘贴按预期工作 - 目标单元格仍可编辑

我在excel 2007和2010上重现了这一点。

我要问的是重现问题并建议如何使用VBA处理此问题,以避免用户锁定单元格。

1 个答案:

答案 0 :(得分:0)

关注@Jeeped建议,我写了这个脚本并且有效:

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Sh.Unprotect Password:="pwd"
Target.Locked = False
Sh.Protect Password:="pwd"
End Sub

但是有副作用。每次工作表更改时都会清除撤消缓存。