在线表AirScript脚本编辑器运行问题

根据超级黑化新路佬帮写的代码,加工测试后发现有BUG

本意是通过代码实现单元格文本倒数第三和第四的文本自动变红,结果发现部分单元格死活就是第四和第五个。

【金山文档 | WPS云文档】 12345679

https://kdocs.cn/l/cqW7YstaypXg

代码:

let row = 1;
const lastRow = Application.Cells(Application.Rows.Count, 1).End(xlUp).Row;

while (row <= lastRow) {
    const cell = Application.Cells(row, 1);
    const text = String(cell.Value2); // 确保转为字符串
    
    if (text.length >= 4) {
        // 修改倒数第 3 和第 4 个字符(位置 9 和 10)
        Application.Cells(row, 2).Value2 = text.length
        cell.Characters(text.length - 3, 2).Font.ColorIndex = 3;
    }
    
    row++;
}

江西省
浏览 832
收藏
2
分享
2 +1
11
+1
全部评论 11
 
复制再写回,保证格式一致。
· 黑龙江省
回复
 
加入对前缀字符的处理。本地有个prefixcharacter属性,不知道在线表airscript有没有相关属性
· 黑龙江省
回复
 
WPS社区小助理

@金山办公

您好,很抱歉给您带来不便。关于这个代码效果不一致的问题,小助理已记录,后续反馈给相关同事考察评估看未来如何优化的,感谢亲亲的反馈
· 广东省
回复
 
wils

创作者俱乐部成员

恐怕是bug,如果取数字也没问题,但显示效果有问题。。。
· 海南省
回复
应该是BUG
· 江西省
回复
 
wow厉害
· 上海
回复
 
text.length - 3+1 比如长度为3,倒数第三个的序数应该是1 但是拿3-3就等于0了
· 湖北省
回复
现在已经不是代码问题了...同样的数据,倒数两个就是不一样
· 江西省
回复