在wps软件的word中使用js宏命令设置表格背景色

使用word那么多年,知道word中可以使用宏命令,却从来没有用过。今天遇到一个需求,word中的表格,是一个成绩表,想标识出不及格的成绩。这个要求在excel中非常容易实现,使用条件格式就可以,但是现在是在word中,应该怎么做呢?

咨询了AI,给出的答案是使用宏命令。于是便尝试了一番,果然成功了。具体步骤如下:

1.要使用宏命令,文件的类型需要保存成.docm,docx不支持宏命令。我起初不知道这一点,保存的时候,WPS有提示。

2.我让AI生成了相应的代码,可是这个代码不知道放到哪里执行。开始用的是VBA的宏命令,开始不成功,后来才知道WPS默认支持的是JS宏命令,刚好我懂js,所以又改用JS代码。

javascript 复制代码
function ScoreColor() {
    let selection = Application.Selection;

    let cells = selection.Cells;
    for (let i = 1; i <= cells.Count; i++) {
        let cell = cells.Item(i);
        let text = cell.Range.Text.replace(/\r\u0007/g, "");
        let v = parseFloat(text);
           if (!isNaN(v)) {
            if (v >= 60) 
                cell.Shading.BackgroundPatternColor = 0xFFFFFF;  // RGB转十六进制
       	    else 
            cell.Shading.BackgroundPatternColor = 0xC6EFCE;
        }
    }

3.开发工具->wps宏编辑器,选中左边的文档项目,把代码拷进去,如图所示。

4.全选中表格,点击"运行宏"命令。这里要记得,一定要选中表格。

运行报错,原来AI给的代码有错误,我按照提示修改了。经过一番尝试,成功的给表格中不及格的数据添加了背景色。想不到,学js除了在前端能用,wps中的宏命令也能用。

相关推荐
weedsfly10 小时前
迭代器、生成器与异步迭代——让数据“按需流动”的艺术
前端·javascript
假如让我当三天老蒯10 小时前
前端跨域解决方案(学习用)
前端·javascript·面试
铁皮饭盒12 小时前
Bun 哪比 Node.js 快?
javascript·后端
JieE21220 小时前
LeetCode 56. 合并区间|超清晰 JS 图解思路,面试高频区间题
javascript·算法·面试
candyTong1 天前
RTK 技术原理:一次典型会话里,80% 上下文是怎么省下来的
javascript·后端·架构
_柳青杨1 天前
深入理解 JavaScript 事件循环
前端·javascript
大家的林语冰1 天前
ES5 凉凉,Babel 8 正式发布,默认不再编译为 ES5 和 CJS......
前端·javascript·前端工程化
weedsfly1 天前
异步编程全景与事件循环——彻底搞懂 JS 执行机制
前端·javascript
用户1733598075371 天前
纯前端 PDF 数字签名实战:Vue 3 + pdf-lib 在浏览器里完成签名嵌入
前端·javascript
JieE2122 天前
LeetCode 226. 翻转二叉树|JS 递归超详细拆解,二叉树入门经典题
javascript·算法