删除错误,表示已解锁的单元格受到VBA的保护

问题描述 投票:1回答:1

我有一个通过VBA复制到新工作表的模板工作表。

通过单击弹出用户窗体的按钮来添加新工作表,并将用户窗体中的信息传送到新工作表。

此新工作表包含锁定的标题单元格以及未锁定的空白单元格,供用户放入信息。该工作表受到保护,但允许用户选择锁定和解锁的单元格。

一切工作了几个月,直到第二天。当创建新工作表并且用户尝试填写未锁定的单元格时,Excel会像将其锁定一样进行响应!

弹出以下信息:

“您要更改的单元格或图表位于受保护的工作表上。要进行更改,请在“审阅”选项卡中单击“取消保护工作表(您可能需要密码)。”

此错误在用户执行以下任何操作后消失1)双击任何空单元格(而不是仅选择它),并以这种方式输入信息,然后单击Enter,所有单元格将正常运行。2)激活任何其他工作表,然后返回到此工作表3)选择“格式”>“取消保护工作表”(这不会取消保护工作表,但是会消除错误。如果用户要取消保护工作表,则必须单击“格式”>“取消保护工作表”两次,即先删除此奇怪的错误然后再取消保护。 )。

我正在尝试使用VBA通过执行上面的1、2或3来消除此错误。

任何想法如何解决这个问题?

另一个问题是,出现问题时无法在页面中用鼠标滚动。

我尝试了以下代码:

ActiveSheet.EnableOutlining = True 
ActiveSheet.Protect Contents:=True, userInterfaceOnly:=True
excel vba protection
1个回答
0
投票
在VBA中创建模块并添加以下代码:

Public Sub RefreshActiveCellSelection() ActiveCell.Select End Sub

[每当执行Workbook.Activate或Worksheet.Activate时,立即调用

Application.OnTime Now, "RefreshActiveCellSelection"

另一个解决方案是卸载KB3085502

我在这里找到答案:http://answers.microsoft.com/en-us/office/forum/office_2013_release-office_install/microsoft-update-excel-2013-kb3085502-32-bit/0cc7d498-92cb-4478-9554-77cff286c847
© www.soinside.com 2019 - 2024. All rights reserved.