【发布时间】:2016-03-01 18:34:09
【问题描述】:
从用户窗体向工作簿添加新工作表时遇到问题。基本上每当我添加一个新工作表时,它似乎都链接到同一工作簿中的另一个工作表。
通过创建一个新的 Excel 文件,然后添加一个新的用户表单,其中包含以下代码,我已经能够相当容易地重现此问题:
Private Sub UserForm_Click()
Sheets.Add
Call Unload(Me)
End Sub
如果我从一张这样的表格打开用户表单:
然后我双击用户表单,问题已经发生了。
新工作表工作不正确。例如,如果我在新工作表的任何单元格上书写,我会从原始工作表中获取格式。更糟糕的是,如果原始工作表受到保护,我就不能在新工作表上写字(尽管功能区显示它不受保护)。
如果我选择另一个工作表并再次选择新工作表,一切都会恢复正常。难道我做错了什么?如果是错误,有什么解决方法吗?
这是一个产生错误的 Excel 文件:Drive.google.com
【问题讨论】:
-
您的示例文件中的问题未出现在 Excel 2010 中。
-
它发生在 2013 Office Excel 中,带有表单控制命令按钮和形状。在工作表上使用 ActiveX 控件命令按钮不会导致此问题。
-
我可以用 xl2016 复制初始格式问题 - 但一旦输入文本,编辑模式下的黄色背景就会消失。然而,其他格式(粗体文本等)从第一张表中保留。很有趣。
-
@brettdj 我看到了由该问题引起的不同行为。有时,当您在新工作表中写入时,原始工作表会发生变化,有时您无法使用箭头键在单元格之间移动。
-
我在 2013 年见过。从模态表单调用
sht.Activate方法似乎有问题。它使sht可见但不活动。我记得的唯一解决方法是用 ActiveX 按钮替换表单按钮。