Excel:允许用户单击锁定的单元格,但不允许编辑

Excel:允许用户单击锁定的单元格,但不允许编辑

有没有办法允许用户单击但不能编辑单元格的内容?我知道我可以在“审阅”->“保护工作表”中的设置中修改“选择锁定单元格”选项。但问题是:我想限制用户单击其他所有锁定单元格,但不能单击日期单元格。原因是我希望用户能够单击日期单元格并弹出一个对话框,他们可以从日历中选择日期,但不能直接编辑单元格。所以,总而言之,我想要三种类型的单元格:

  1. 可编辑、可点击的单元格
  2. 不可编辑、可点击的单元格
  3. 不可编辑、不可点击的单元格

是否有某种中间立场可用于将某些单元格设置为选项#2?我已经在工作表事件中使用 Application.Undo 尝试了各种技巧(这可能会使这个问题更适合 Stackoverflow,因为这涉及 VBA),但到目前为止我还没有运气。

答案1

如果您锁定单元格,您也无法使用日期选择器。

鉴于这需要 VBA 才能工作,您无需担心允许选择锁定的单元格。您需要添加按钮或让 VBA 理解当用户单击单元格时它必须执行某些操作,然后在宏中暂时删除保护,更改单元格的内容,然后再添加保护。

鉴于 SuperUser 不是“请为我编写一个脚本”之类的服务,我只能回答这么多了。如果您开始使用 VBA 宏并且有疑问,请将您的代码作为新问题发布,我们可以帮助您找到问题所在。

别忘了,您只需按下 Excel 中的“录制”按钮,执行您选择的操作,按下“停止”按钮,您就拥有了宏。然后您需要对其进行编辑,使其成为动态宏(适用于任何单元格等)。

如果 VBA 确实不是一个选项,请考虑以下几点:解锁所有日期单元格,并保护工作表。用户可以自由点击和编辑这些单元格,但不能编辑其余单元格。使用数据验证,您可以确保他们只输入日期。

相关内容