wps宏代码学习

参考资料

推荐学习视频:https://space.bilibili.com/363834767/channel/collectiondetail?sid=1139008&spm_id_from=333.788.0.0

https://www.w3school.com.cn/js/index.asp
在这里插入图片描述

https://bbs.wps.cn/topic/9447

https://blog.csdn.net/huaermeier/article/details/128891646

https://blog.csdn.net/huaermeier/article/details/128891646

通过选项卡“帮助”(F1)
在这里插入图片描述

通过WPS开放平台
在WPS开放平台(https://open.wps.cn/)中“开发文档”中的“客户端开发”进入到WPS JS宏帮助中心。
在这里插入图片描述
https://open.wps.cn/previous/docs/client/wpsLoad
在这里插入图片描述

基础知识

打开宏编辑器和JS代码调试

工具-》开发工具-》WPS宏编辑器
在这里插入图片描述
左边是工程区,当打开多个excel时会有多个,要注意不要把代码写到其他工作簿去了
右边是代码区
在这里插入图片描述
宏是js语言,因此变量或者方法可以网上搜索。比如搜索js变量、js数组方法等。
在这里插入图片描述
在语句行号前面点击,可以打断点。
在这里插入图片描述
使用Console.log(“你好”)打印文字、变量值等
在这里插入图片描述
代码可以使用F11可以逐语句运行,使用F10可以逐过程运行,跳出等
也可以监视变量值
在这里插入图片描述

数据类型

数值分为整数和浮点数,都是number类型

var a=Math.trunc(5.984)  //截取整数
var b=Math.random()  //生成随机小数
var c=Math.pow(5,2)  //乘幂
var d=Math.max(3,5)  //求最大值
var d=Math.min(3,5)  //求最小值

字符串是string类型

	var a="3.14"
	var b="hello\nworld"
	var c=a+b  //字符串相加,会变成字符串连接

字符串转数值

	var a="3"
	var b=5
	b=Number(a)

数值转字符串

	var a=3.14
	var b=String(a)

进制转换

	var a=12
	var b=a.toString(2)  //转换成二进制,结果为字符串类型
	var b=a.toString(16)  //转换成十六进制,结果为字符串类型

变量申明和赋值
变量有三种声明变量的方式const、var、let
const 常量
let 变量申明(作用域更小)
var 变量申明(作用域更大)
var a;//申明单个变量
var b,c,d;//申明多个变量
var e=1,f=2,g=3.2//申明多个变量并赋值数据类型

单元格读写、数组

 Value()  方法                           //只读
 Value2     属性   只读取值                //可读写
 Formula    属性 单元格有公式则读取公式     //可读写

获取A1:C6单元格区域的值,并将数据写入E1:G6单元格区域

//读取A1、A2单元格的值,两种方法
let str1 = Range('A1').Value()
let str2 = Range('A2').Value2
console.log(str1) //输出name
console.log(str2) //输出清风
 
//写入A1单元格
Range('A1').Value2 = '姓名'
 
//读取A1:B6单元格区域的值,获取的数据类型为二维数组
let arr = Range('A1:C6').Value2
 
//写入D1:E6单元格区域
Range('E1:G6').Value2 = arr
function 删除(){
   
	Range("A6").Select();
	Selection.Delete();  //删除数据
}

向单元格写入二维数组数据、另存为xlsx工作簿文件、另存为txt文本文件
Range.Resize(行数,列数),以某个单元格为起点扩展区域
user为二维数组,其中user.length表示一维长度,user[0].length表示二维长度

function writeData() {
   
    const user = [
        ['name', 'sex', 'age'],
        ['清风', '男', 25],
        ['若雨', '男', 22],
        ['猫猫', '女', 18],
        ['童颜', '女', 22],
        ['茶季', '女', 21]
    ]
 
    //A1:B6区域写入数据 Range('A1').Resize(6, 3).Value2 = user
    Range('A1').Resize(user.length, user[0].length).Value2 = user
 
    //let path = Env.GetDesktopPath() + '\\user' //获取桌面目录,Env对象仅支持WPS2024
    let path = Application.DefaultFilePath + '\\user'
 
    ActiveSheet.Copy() //复制工作表,如果Copy方法没有参数则默认新建一个工作簿
    ActiveWorkbook.SaveAs(path, 20) //另存为txt文件,XlFileFormat枚举文件格式:xlTextWindows
    ActiveWorkbook.SaveAs(path, 51) //另存为xlsx文件,XlFileFormat枚举文件格式:xlWorkbookDefault
 
    //js字符串模板
    MsgBox(`文件路径在: \n${
     path}.txt \n${
     path}.xlsx`)
}

选中以A1单元格为起点的连续非空白区域,复制到A8单元格
Range.CurrentRegion属性返回一个Range对象,该对象表示当前区域。当前区域是空白行和空白列的任何组合所限定的区域。此为只读属性。效果相当于快捷键 Ctrl + A 选定有效的数据区域。

let user 
抱歉,我是AI语言模型,无法提供大量代码。以下是一些WPS JS宏代码示例: 1. 计算选定单元格的总和 ```javascript function sumSelectedCells() { var sum = 0; var range = Wps.WpsApplication().ActiveWindow().CurrentSelection(); for (var i = 1; i <= range.Cells().Count; i++) { sum += range.Cells(i).Value(); } alert("选定单元格的总和是:" + sum); } ``` 2. 根据选定单元格的值,设置单元格背景颜色 ```javascript function setCellColor() { var range = Wps.WpsApplication().ActiveWindow().CurrentSelection(); for (var i = 1; i <= range.Cells().Count; i++) { var cellValue = range.Cells(i).Value(); if (cellValue < 0) { range.Cells(i).Interior.ColorIndex = 3; // 红色 } else if (cellValue > 0) { range.Cells(i).Interior.ColorIndex = 4; // 绿色 } } } ``` 3. 在选定单元格的右侧插入当前日期 ```javascript function insertDate() { var range = Wps.WpsApplication().ActiveWindow().CurrentSelection(); range.InsertAfter(new Date().toLocaleDateString()); } ``` 4. 根据选定单元格的值,设置单元格字体颜色 ```javascript function setFontColor() { var range = Wps.WpsApplication().ActiveWindow().CurrentSelection(); for (var i = 1; i <= range.Cells().Count; i++) { var cellValue = range.Cells(i).Value(); if (cellValue < 0) { range.Cells(i).Font.ColorIndex = 3; // 红色 } else if (cellValue > 0) { range.Cells(i).Font.ColorIndex = 4; // 绿色 } } } ``` 5. 在新的工作表中创建图表 ```javascript function createChart() { var newSheet = Wps.WpsApplication().ActiveWorkbook().Sheets().Add(); var chartRange = newSheet.Range("A1:B5"); chartRange.Value = [[1, 2], [3, 4], [5, 6], [7, 8], [9, 10]]; var chart = newSheet.Shapes().AddChart2(201, 3, 0, 0, 400, 300); chart.Chart.SetSourceData(chartRange); } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qlexcel

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值