当工作表受密码保护时Excel从外部源粘贴数据

时间:2017-02-23 17:55:14

标签: excel vba excel-vba

我正在设置一个Excel工作表。在该表中,用户只能与特定范围内的单元交互,例如。 (" A1:B10&#34)。所以我将这些细胞设置为"解锁"单元格和密码保护整个工作表,只允许用户选择未锁定的单元格"。
我面临的一件事是,虽然工作表受密码保护,但它需要能够允许用户从外部源粘贴数据。如何在工作表受密码保护的情况下启用粘贴功能?

更新:
这是在启用宏的工作簿中 我使用以下代码来启用和禁用工作簿中的某些功能。

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
    Application.Calculation = xlAutomatic
End Sub

Private Sub Workbook_Open()
    Application.Calculation = xlAutomatic
    Application.CellDragAndDrop = False
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Application.Calculation = xlAutomatic
    Application.CellDragAndDrop = True
End Sub

Private Sub Workbook_WindowActivate(ByVal Wn As Window)
    Application.Calculation = xlAutomatic
End Sub

我发现,当我拿出代码,保存并重新打开工作簿时,粘贴工作正常。粘贴代码后,保存并重新打开工作簿,粘贴不起作用。

1 个答案:

答案 0 :(得分:0)

经过几个小时的测试后,我终于通过删除Workbook_WindowActivate部分中的代码解决了这个问题。不知怎的,这可能会阻止粘贴功能起作用。