为什么粘贴到Excel中不受保护的单元格中可以对其进行保护?


12

在研究此问题的答案时,我偶然发现Excel中与受保护的工作表中不受保护的单元格有关的一个相当奇怪的行为。

要了解我的意思,请创建一个新工作簿,取消保护其第一个单元格(A1)并保护工作表。现在可以输入文本的唯一单元格应该是A1。接下来转到其他应用程序(例如您的浏览器),并从中复制一些文本。通过单击一次选择第一个单元格(不要双击或粘贴到公式栏),然后将文本粘贴到其中。

这不仅可能更改单元格的格式,还将设置其保​​护标志。此后,如果不删除工作表的保护(当然也不要取消粘贴操作),就无法再次更改该单元格的内容。

这是为什么?这是所需的行为还是Excel 2010(我曾尝试使用的版本)中的错误?

Answers:


13

实际上,这是个好消息,这是预期的行为(Microsoft很好地期望,而用户不一定期望)。有一个非常简单的解决方法,那就是更好的消息。

当您粘贴一段格式化的文本时,单元格将被赋予“正常”样式,然后将所需的格式置于顶部。默认情况下,“普通”样式的保护设置为锁定。所以这就是为什么要应用它的原因。

解决方案是修改“普通”样式。要复制此问题的已解决版本,请创建一个新工作簿,然后:

1)在“样式”部分的“主页功能区”上,右键单击“普通”框,然后单击“修改”。按格式按钮,然后在保护选项卡上取消选中已锁定。(请记住,这仅适用于此电子表格,但是现在所有单元格都将不受保护,而不是受保护)。

2)选择“所有单元格”,右键单击并选择“格式化单元格”,然后在保护下选中“锁定”。

3)仅选择A1,右键单击,选择格式单元格,然后在保护下取消选中锁定。

4)保护工作表

现在,在锁定和解锁单元格方面,我们应该回到与问题示例相同的位置,但是具有不同的“普通”样式。

现在,当我从单词或其他位置粘贴文本时,该单元格就不会受到保护。


在使用Excel数年之后,我很震惊地发现了这个“功能”。我什至不相信我的用户何时告诉我,直到我检查了自己:)很高兴您在我面前这几年:D
ZygD 2015年

1

先前的答案不再适用于最新版本的Excel365。当前版本的Excel 365现在创建一个名为“ Normal 2”或所需的任何序号的新样式。它应用锁定的新样式,而不是修改后的普通样式。

这是Excel 365的解决方案。选择您希望其他人能够编辑的单元格范围。然后,转到“查看”标签。在“更改”部分中,单击“允许用户编辑范围”。点击“新建”按钮。您选择的范围将自动填充自动生成的标题。进行所需的任何手动更改。如果您希望人们只能使用密码进行更改,则可以在此处输入密码。我希望人们不要使用密码,所以我单击“权限”按钮,然后单击“添加”。我希望任何人都可以在没有密码的情况下进行编辑,因此我输入“所有人”,以允许用户进行编辑。如果您了解权限,则可以选择一个或一组用户,而无需密码即可进行编辑。然后只需单击“确定” 直到所有窗户都关闭。保护好床单,你就很好。


0

我不知道为什么会这样,但是就我而言,这是一个很大的错误。:-(

就像任何时候Excel尝试以文本格式粘贴文本以及重新锁定单元格一样。如果选择Match Destination Formatting作为粘贴选项;从纯文本编辑器(如记事本)粘贴;或从同一Excel实例中的另一个工作簿粘贴,则此后仍将单元格解锁。如果您从具有文本格式的任何其他应用程序中进行常规粘贴,甚至从Excel的另一个实例进行粘贴,则Excel都将锁定您未锁定的单元格。

格式化问题至少可以解决,您可以从另一个单元格复制正确的格式并将其粘贴回混乱的单元格中。


事实证明这不是错误。添加了我认为的解决方案,并认为您可能会感兴趣。
亚历克斯·安德罗诺夫

如果您已经设置了电子表格并且不必面对必须通过编辑“普通”样式重新设置的情况,则“纯文本粘贴”选项(或“匹配目标格式”)可能是最好的选择。但是,它确实依赖电子表格的用户知道如何选择不同的粘贴选项。根据我的经验,只有很少的人!
user535673

0

您可以从Web浏览器中粘贴数据的受保护工作表(AtiveCell)中选择未受保护的单元格。粘贴后将被保护。这是不可取的:-)

我做到了,而且有效!

在工作表代码中,以我的情况为“ Sheet1”:

Sub Worksheet_Change(ByVal Target as Range)

  ...some irellevant code...

  ActiveSheet.Unprotect   
  ActiveCell.Locked=False

  ...code that protects Sheet1

Exit Sub

0

像此页面上的其他所有人(和主题)一样,您都觉得很尴尬。但是,(对我而言)最好的解决方法是在插入数据时粘贴到“粘贴值”,在粘贴链接时粘贴到“特殊粘贴”-“超链接”。我这样做是因为我通常会涉及条件格式设置,因此我不得不粘贴值(或者条件格式更改)。希望您能找到用处。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.