创建 Excel 复选框并锁定同一行中的其他单元格,无需使用宏

创建 Excel 复选框并锁定同一行中的其他单元格,无需使用宏

我正在尝试找出是否可以避免使用宏来执行以下操作:当用户勾选复选框时,它会锁定同一行的所有其他单元格。如果他取消勾选,它会解锁单元格...

目前,我的系统使用宏来实现这一点,但是一旦客户让我在系统中创建包含数千行的电子表格,宏就会使其运行得非常非常慢(有时甚至需要几个小时才能打开电子表格)。

我刚刚开始这项研究,想看看不使用宏的情况下我可以用 excel 复选框做什么,我想知道我是否可以根据复选框是否被选中来锁定其他单元格,而无需使用宏。可能吗?如果可以,那么怎么做?提前致谢。

答案1

你可以这样做。

答案之前已经给出过,请查看 StackOverflow 上的以下答案:

https://stackoverflow.com/questions/11953214/excel-how-to-lock-cell-without-using-macros-if-possible/11954076#11954076

但是,我认为这有点麻烦,我不喜欢麻烦的电子表格,因为它们往往不受支持。正如@gtwebb 所说,可能值得分享您的代码以查看是否可以优化。


你可以仅使用数据验证来阻止用户输入新数据

编辑:在列表中使用公式

感谢餐饮主管的评论,值得记住的是,您可以在数据验证/列表中使用公式。

请参阅他对另一篇帖子的回答以了解其实际作用:https://stackoverflow.com/a/11902463/138938

原始帖子

Excel 2007 演练:

Ribbon > Data > Data Validation
Authorize : Personnalized (or similar, my Excel is not in English sorry)
Enter this formula in the field:
    =IF(A1="",FALSE,TRUE)

因此,如果 A1 仍然为空,则无法在单元格中输入值

你可以仅使用数据验证来阻止用户输入新数据

编辑:在列表中使用公式

感谢餐饮主管的评论,值得记住的是,您可以在数据验证/列表中使用公式。

请参阅他对另一篇帖子的回答以了解其实际作用:https://stackoverflow.com/a/11902463/138938

原始帖子

Excel 2007 演练:

Ribbon > Data > Data Validation
Authorize : Personnalized (or similar, my Excel is not in English sorry)
Enter this formula in the field:
    =IF(A1="",FALSE,TRUE)

因此,如果 A1 仍然为空,则无法在单元格中输入值

相关内容