我在 Excel 中有一个工作表,其权限设置为“允许用户编辑范围”。
这些不同的范围由具有不同权限的用户可以编辑的列组成。
有没有办法从这些范围中排除单元格/行?
例如,我想说我想要 A 列中所有内容的范围,除非该行的 G 列中的单元格中没有任何内容。
或者,有没有办法使用宏来打印出这些复杂的范围?
我在 Excel 中有一个工作表,其权限设置为“允许用户编辑范围”。
这些不同的范围由具有不同权限的用户可以编辑的列组成。
有没有办法从这些范围中排除单元格/行?
例如,我想说我想要 A 列中所有内容的范围,除非该行的 G 列中的单元格中没有任何内容。
或者,有没有办法使用宏来打印出这些复杂的范围?
您可以使用 vba 或手动选择单元格,然后在锁定工作表之前将锁定属性设置为 false。这将允许用户编辑这些范围/单元格。
您可以使用条件格式来识别这些锁定的单元格。
选择您的范围(所有单元格的 ctrl-A)。
条件格式公式为: =CELL("protect",A1)=0
“允许用户编辑范围”仅允许我们指定范围,而不是应用允许或禁止编辑的规则。
您可以使用它Data Validation
来生成错误消息。例如,创建自定义验证规则
=K2<>""
在一个特定的单元格中意味着如果他们尝试将一个值放入另一个单元格中,如果 K2 为空,则会产生一条错误消息。您需要取消选中显示的框Ignore Blank
。
但这并不是万无一失的,因为复制/粘贴会消除规则。
它可以用 VBA 完成,但即便如此,它也可以用复制/粘贴来规避。但是,(例如)BeforeSave
事件可用于检查这些单元格的内容并生成消息并阻止保存。
免责声明:我不知道 VBA 是否适用于使用“允许用户编辑范围”功能的文件。