FanXiaoLei

wps中开始支持javascript了

在wps最新的测试版中支持开始撸javascript了。今天测试了一下,结果还行。目前主要问题是不知道怎么调用第三方js库。也没看到什么相关的官方文档。

如果不做设置的话,wps每次启动时候会默认进入到vb宏模式.

 

这时候你需要点击开发工具选项卡上的“切换到js宏”选项才能进入js宏模式。

 

 

 如果你想每次直接进入js宏模式,通过文件---选项 进行设置。

 

 先来做一个js宏测试一下:

下面展示一下在单元格里面引用javascript自定义函数。

wps javascript编辑器里面输入下面代码:

function 日期()
{
	return ""+new Date()	
}

  在单元格里面直接引用日期函数:

读取单元格:

function 读取单元格()
{
	alert(Sheets.Item(1).Range("A1").Value2)
	alert(Sheets.Item("123").Range("A1").Value2)
}

 结果:

 

 

 写入数据到单元格里:

function 写入单元格()
{
	Sheets.Item(1).Range("A1:B1").Value2=\'fanxiaolei\'

}

 结果:

 

 

 写入一维数组到单元格里:

function 写入一维数组()
{
	arr=[1,3,\'hello\',"world"]
	Sheets.Item(1).Range("A1").Resize(1,arr.length).Value2=arr

}

 结果:

 

 二维数组的话写入不能直接一次性写入。我自己实验的时候是遍历里面每个一维数组一次性写入。

 类的使用:

class Point {
  constructor(x, y) {
    this.x = x;
    this.y = y;
  }

  toString() {
    return \'(\' + this.x + \', \' + this.y + \')\';
  }
}

function 类的使用()
{
let a=new Point(3,4)
alert(a.toString())
}

 结果:

 

 试了一下ES6的语法可以使用:

function pp()
{
	
	 let arr= [\'a\',\'b\',\'c\']
	for(let n of arr)
	{
		Console.log(n)
	}
}

function setdemo()
{
const s = new Set([2, 3, 5, 4, 5, 2, 2]);
for (let i of s) {
  Console.log(i);
}
}

 

目前我估计功能应该没有全部完成。部分vba里面的东西也能使用。像application对象,worksheetfunction里的函数都能使用。msgbox也能用。

看着和vba差不多。但是我们可以看到没有工作表的代码窗口。目前仅能使用applicaion和workbook级别对象的事件,针对具体sheet级别的事件没有。等到正式版发布,有官方文档才更好研究具体的细节。

不得不说wps连个论坛吐槽发帖反馈的地方都没有。也是服。

发表于 2021-03-02 10:44  fan2006  阅读(9392)  评论(2编辑  收藏  举报
 

分类:

技术点:

相关文章:

  • 2018-04-24
  • 2019-12-13
  • 2021-11-21
  • 2021-11-28
  • 2021-09-14
  • 2021-11-04
  • 2021-09-14
  • 2018-04-20
猜你喜欢
  • 2021-09-25
  • 2021-12-04
  • 2021-10-15
  • 2021-12-19
  • 2021-11-12
  • 2021-12-05
  • 2021-09-28
相关资源
相似解决方案