如何防止在线 Excel 中删除单元格内容?

如何防止在线 Excel 中删除单元格内容?

一位办公室职员问我,是否有办法防止在线 Excel 中删除单元格。(Office 在她的工作站上运行)。我不知道,但这个问题看起来很有趣。

语境:她简要公布了一个地址,要求员工写下他们不同日期的上班时间。所有员工的登录名/密码相同。这个过程是竞争性的,但必须遵循一定的规则,这意味着每个员工可以在他/她想要工作的日子前面写下他/她的名字,最多 8 次。

问题

  1. 服务器无法处理 15-20 人使用相同登录名/密码对的情况。尽管带宽足够,但 CPU 能力显然不够。
  2. 一些员工不遵守规则:虽然许多人会将自己限制在允许的 8 个位置,但其他一些人会高兴地删除同事的名字,填补 15 到 20 个位置。

问题:她有没有办法配置 Excel 电子表格,以便强制执行每人 8 个位置的规则,而无需她手动删除违法者的姓名?

这是否与输入的第一个名字的单元格锁定有关(这可能吗?)有没有办法让 Excel 只允许输入某个名字 8 次?

答案1

您可以使用数据验证来执行此操作。查看“数据”>“数据验证”。

数据验证通常用于更普通的任务,例如确保输入的值是数字,但您也可以将其设置为使用自定义公式。输入COUNTIF

COUNTIF 的最简单形式是:
=COUNTIF(您想查看哪里?, 您想查找什么?)

(我喜欢这个,直接来自 MS 文档)

让我们使用一些示例数据:
Excel 示例数据

当我们设置时,COUNTIF我们需要将其应用于用户可以输入文本的单元格范围(请注意,这可能不是一个连续的范围,B2:B6:D2:D6例如,您可以这样做,但为了简单起见,我只是覆盖整个工作表)。
请注意,它需要是一个绝对引用 ( $B$2:$D$6)。

的下一部分COUNTIF并不完全直观,您需要将“您要查找什么?”设置为数据验证块中当前选定的单元格。这是因为该单元格引用将随着验证规则应用于每个单元格而改变(这与范围COUNTIF需要绝对的原因相同)。

所以它看起来像这样: Excel 数据验证条目

注意:如果您更改数据验证规则,它将仅适用于所选的单个单元格。请确保选中复选框Apply these changes to all other cells with the same settings

您需要保持Ignore blank选中状态,否则它会计算空白单元格并使其无效。您还可以做一些有趣的事情,例如自定义错误警报。当一切正常时,它看起来像这样: Excel 数据验证

答案2

我相信一种方法是启用跟踪历史记录。

这样,明天您就可以打开文件并查看每个人做了什么。
如果一个人删除了一所大学,那么它将显示在跟踪历史记录中。

这是一项“低预算”修复,只有当有人删除“Jane”并将其替换为“Mary”时才会显示。
如果某人知道该功能已启用或想要替换“Jane”,也可以禁用此功能。


另一个更复杂的解决方案是 VBA。
我制作了一个工作簿,您需要登录才能编辑它,登录后,您可以使用每次更改单元格时运行的 VBA 代码。
然后可以将此更改写入单独的工作表或工作簿。
在同一个 VBA 代码中,您还可以让它查找同一名称出现的次数。

答案3

尝试了 Ian 在 Excel 2016(Mac)中提供的解决方案,但它没有任何作用……没有弹出窗口或类似的东西。

相关内容