5金币
本帖最后由 Richard.Huang 于 2024-2-19 15:56 编辑
开启表单保护, 然后在将list数据设置给单元格时,通过sheet.getRange(2 + index, 1, 1, 1, GC.Spread.Sheets.SheetArea.viewport).locked(false) 将其code列的单元格设置为可编辑项,当在点击保存校验时,将没校验过的单元格(示例中只有code列的单元格为可编辑项)和num列的单元格设置为红色, 经过测试发现校验之后code列单元格变为不可编辑. (附件是示例代码)
测试时可以点击在数据行末尾插入按钮实现空行的校验。另外还有一个问题, 我在项目中会遇到如果某一个的可编辑项被设置为空,此时校验未通过,且他的单元格背景色会被设置未红色, 但是num列的单元格不会被设置未红色。
这个问题在测试案例中没有复现。我想问这会和上面的问题是一个问题吗?
|
最佳答案
查看完整内容
对于您的两个问题我来进行分别回答
1. 点击“保存校验”后,可编辑的单元格变成了不可编辑的单元格,这是因为您的默认style的locked属性是true,而您在设置单元格背景色的时候不是在原有的单元格style基础上去添加一些自定义的样式逻辑,而是new了一个新的style对象,这就造成原本的locked属性从false变成了true,您应该这样写才是正确的:
2. 第二个问题我没有复现,您可以测试一下上述更改后的代码,看能否解决您的问题
|