WPS JS详细教程
>戳我爆炸<
关注公众号【小知识酷】回复“WPS代码教程”领取更全面的教程,还有免费咨询的交流群
01 JS宏设置
- 点击左上角【文件】-倒数第2个,点击【选项】-勾选【默认JS开发环境】
- 方法一:选择【开发工具】-【WPS宏编辑器】。方法二:按住Alt+F11
02函数
- WPS JS每条语句后面可以有“;”,也可以没有“;”,程序都可以运行。
- 函数名可以用中文命名。
- 按F5默认会执行最后一个函数,如下代码就会输出MrFlySand-飞沙。
alert()
就是窗口输出console()
就是控制台输出- Debug.Print()
- 注意:在代码中所有标点符号在要英文状态下输入。
function 输出2(){alert("MrFlySand-飞沙-520")
}
function 输出(){alert("MrFlySand-飞沙")
}
03单元格
3.1读取单元格/输出单元格
3.1.1选择工作表
Sheets.Item()
是选中工作表,excel默认的第一个工作表名称也是Sheet1。Sheets.Item(2)
是选中第2个工作表。圆括号()
里面可以是数字如果里面是一个数字n,表示它是第n个表。Sheets.Item("飞沙的成绩")
是选中的是“飞沙的成绩”工作表,注意:中文飞沙的成绩
要在英文双引号""
里面。
3.1.2选择单元格
Range()
选择单元格- Value2意思就是值或元素
- WPS JS可以使用运算符“+”,
"A"+2
就是A2。注意:"A"&2
是错误的语法
function 读取单元格(){// 输出第1个工作表的A1单元格的值alert(Sheets.Item(1).Range("A1").Value2)// 输出工作表名为Sheet2的A2单元格的值alert(Sheets.Item("Sheet2").Range("A"+2).Value2)
}
3.2运用库函数和给单元格赋值
Date()
是获取当前时间的函数Sheets.Item(1).Range("A1").Value2 = Date()
意思是:第1个的工作表中A1 = 现在的日期
function Fun(){Sheets.Item(1).Range("A1").Value2 = Date();alert(Sheets.Item(1).Range("A1").Value2);
}
3.3设置单元格的颜色和背景
function MyFun(){//选中B4单元格Range("B4").Select();//圆括号里面就是选择B4单元格的文字(obj=>{//改变这个字体的颜色obj.Color = 2; })(Selection.Font);//圆括号里面就是选择B4单元格的内部背景(obj=>{//改变这个背景的颜色obj.Color = 65536;})(Selection.Interior);
}
04 新建工作表
function 新建工作表(){var sht=Worksheets.Add(null,Sheets(Sheets.Count));sht.Name="mrflysand的数据分析表"; //工作表的名称
}
05 if判断
- 如果第1个工作表的A1单元格的值是1,输出“1”和“有1或2”;如果第1个工作表的A1单元格的值不是1或2,输出“没有1和2”。
- 其中
||
表示或
function 读取单元格(){// 输出第1个工作表的A1单元格的值alert(Sheets.Item(1).Range("A1").Value2)// 判断语句if(Sheets.Item(1).Range("A1").Value2==1 || Sheets.Item(1).Range("A1").Value2==2){alert("有1或2")}else{alert("没有1和2")}
}
06循环
6.1 实例一
for(步骤1; 步骤2; 步骤4){步骤3}
,for循环的执行步骤:
- 步骤1:定义i的初始值
- 步骤2:判断i的值是否符合条件,如果符合条件,执行步骤3;如果不符合条件,则结束。
- 步骤3:每次要执行的内容1,如一些代码程序
- 步骤4:每次要执行的内容2,一般情况下是自增
function Loop(){for(var i=1; i<=5; i++){alert(i)}
}
运行结果:
1 2 3 4 5
6.2 实例二
function LoopArr(){var arr = ["公众号","小知识酷","关注不迷路"]for(var i=0; i<=2; i++){Sheets.Item(1).Range("A"+(i+1)).Value2 = arr[i]}
}
运行结果
代码解释说明
i=0时,"A"+(i+1)=A1,Range("A1"),arr[0]="公众号"
i=1时,"A"+(i+1)=A2,Range("A2"),arr[1]="小知识酷"
i=2时,"A"+(i+1)=A3,Range("A3"),arr[2]="关注不迷路",循环就会停止。
07数组
Resize(row,list)
选中多个单元格,相当于一个二维数组。Resize(1,5)
表示1行5列的一维数组;Resize(2,5)
表示2行5列的二维数组;Resize(5,5)
表示5行5列的二维数组。- row:选中多少行
- list:选中多少列
array.length
:数组的长度- array:数组名
- length:长度,数组里面元素个数
function 一维数组(){// 一维数组的定义arr=["MrFlySand","飞沙",'QQ',2602629646];alert("数组里面元素个数:"+arr.length )// 只在在A1单元格写入MrFlySand// 只是把第一个元素放在单元格中Sheets.Item(1).Range("A1").Value2 = arr;// 只在在A6单元格写入MrFlySand// Resize(1,1):第一个1表示只显示1行;第2个1表示数组中第1个元素Sheets.Item(1).Range("A6").Resize(1,1).Value2 = arr;// 在A11:C11单元格写入"MrFlySand","飞沙",'QQ'// Resize(1,4):1表示只显示1行;3表示数组中前第3个元素 Sheets.Item(1).Range("A11").Resize(1,3).Value2 = arr;// 在A16:D18单元格写入"MrFlySand","飞沙",'QQ',2602629646// Resize(3,arr.length):3表示显示3行;arr.length表示数组中元素的个数,及长度为4// 选中的格子读入的数据是一个一维数组Sheets.Item(1).Range("A16").Resize(3,arr.length).Value2 = arr;
}
7.1一维数组的输出
function arr(){let arr= ["MrFlySand","飞沙",'QQ',2602629646];Sheets.Item(1).Range("A1").Resize(1,arr.length).Value2 = arr;
}
输出内容
7.2一维数组的遍历
function Fun(){// 定义数组const arr = new Set(["MrFlySand","飞沙",'QQ',2602629646]);//i表示值,arr表示在这个数组中遍历for (let i of arr) {Console.log(i);}
}function Fun1(){ let arr= ["MrFlySand","飞沙",'QQ',2602629646];// 定义数组//n表示值,arr表示在这个数组中遍历for(let n of arr){Console.log(n)}
}
7.3二维数组的输出
- 输出下方的表格
代码说明:
- 在WpsJs中数组的下标是从0开始的
- 二维数组的定义格式:
函数名=[["1","2"],["3","4"],["5","6","7"]]
就比如在1个数组(1个年级)中有3个数组(3个班),且这3个数组(3个班)中有2个不同的学生。arr.length
获取1个数组(1个年级)中有几个数组(n个班)arr[0].length
获取1班的人数,有2个学生,分别是1、2arr[1].length
获取2班的人数,有2个学生,分别是3、4arr[2].length
获取3班的人数,有3个学生,分别是5、6、7
function 二维数组(){// 二维数组的定义arr=[["MrFlySand","飞沙",'QQ',2602629646],[2602629646,'QQ',"飞沙","MrFlySand"]];// 输出二维数组的行数和列数alert("行数:" + arr.length + ",列数:"+arr[0].length)// 输出二维数组的2行3列的值/输出第2个学生的英文名alert("2行3列的值:" + arr[1][3]);// 输出二维数组的1行/输出第1个学生的所有个人信息Sheets.Item(1).Range("A1").Resize(1,arr[0].length).Value2 = arr[0] // 输出二维数组的2行/输出第2个学生的所有个人信息Sheets.Item(1).Range("A2").Resize(1,arr[0].length).Value2 = arr[1]
}
7.4数组输出行和输出列
arr1
是一个一维数组,输出显示的是一横排。arr2
是一个二维数组,输出显示的是一竖排。
function arr(){let arr= ["MrFlySand","飞沙",'QQ',2602629646];Sheets.Item(1).Range("A1").Resize(1,arr.length).Value2 = arr;let arr1= ["MrFlySand","飞沙",'QQ',2602629646];Sheets.Item(1).Range("A3").Resize(4,4).Value2 = arr1; let arr2 = [["MrFlySand"],["飞沙"],['QQ'],[2602629646]];Sheets.Item(1).Range("A8").Resize(4,1).Value2 = arr2;
}
以上代码输出内容
7.5使用循环输出列
function arr2(){let arr= ["MrFlySand","飞沙",'QQ',2602629646];for(var i=1,j=0; j<=arr.length; i++,j++){Sheets.Item(1).Range("A"+i).Value2 = arr[j]; }
}
08类的使用
// 声明类
class Arms{ // 构造函数,给属性传值 constructor(name, attack) {this.name = name;this.attack = attack;}//返回当前装备的属性值toString() {return '名称:' + this.name + ', 攻击力:' + this.attack + '';}
}function 类(){//定义类let arr=new Arms("AK47-MrFlySand",88)// 输出类alert(arr.toString())Sheets.Item(1).Range("A1").Value2 = arr.toString();
}
WPS JS详细教程相关推荐
- JS表单验证(HTML+CSS+JS)详细教程
大家好,今天分享一个HTML+CSS+JS表单验证,这是我前两天学习的一个小demo,在这记录一下. 目录 一.效果图 二.介绍 三.代码 (1)HTML (2)CSS (3)JavaScript J ...
- 【ZT】【详细教程】WPS如何关闭自动更新和WPS热点?(ksomisc.exe)
受不了WPS三条两头的自动升级了(升级倒好,每升级一次就把经典界面给修改了!),终于决定关闭WPS的自动升级了. C:\Users\Administrator\AppData\Local\Kingso ...
- linux安装Node.js(详细)Node.js安装教程
linux安装Node.js(详细)Node.js安装教程 文章目录 linux安装Node.js(详细)Node.js安装教程 1:下载 2:解压 3:移动目录 1:创建目录 2:移动目录并重命名 ...
- Node.js及npm安装详细教程
Node.js及npm安装详细教程 下载 安装 下载 点击以下链接进入NodeJs官网 https://nodejs.org/zh-cn/ 首页有推荐两个版本,大家视自己情况下载,如果需要下载历史版本 ...
- d3.js画柱状图超详细教程
d3.js画柱状图超详细教程 完整代码下载链接:https://download.csdn.net/download/qq5q13638/85248934,直接用这个文件夹内打开即可. 下面是完整教程 ...
- 阿里云ECS服务器部署Node.js项目详细教程及多网站部署
本文详细介绍如何部署NodeJS项目到阿里云ECS上,以及本人在部署过程中所遇到的问题.坑点和解决办法,可以说是全网最全最详细的教程了.同时讲解了如何申请阿里云免费SSL证书,以及一台ECS服务器配置 ...
- 实用教程:如何在Word与EXCEL(WPS)中加入斜表头并加入文字详细教程
实用教程:如何在Word与EXCEL(WPS)中加入斜表头并加入文字详细教程 一. 效果 二. Word方法 1.首先加入空表格: 2. 写入想要的文字并按Enter(回车)键分开(特指:斜表头) 3 ...
- WPS表格求和详细教程
WPS表格求和详细教程 求和功能表格里面基础需要掌握的一个知识点,今天读书屋OFFICE教程网的陈飞老师将讲解WPS表格求和四个方法,分别是"快速求和按钮"."手工计算& ...
- html七牛云图片文件上传,使用Js将文件图片视频上传到七牛云详细教程-Fun言
前言 因为项目需要,需要将一些较大文件上传到七牛云,以前都是通过数据流上传到服务端,然后在服务端进行上传操作,因为以前文件都很小所以无所谓,但是要是几百M的文件就不行了,所以就采用前端js直接上传到七 ...
最新文章
- 多项式拟合缺点_机器学习——机器学习算法优缺点综述
- “PC一哥”联想的这些年
- 给定圆的半径r,求圆的面积。
- Fiori应用里如何隐藏prospect字段
- 工业相机,大恒,面振相机8脚电源线和I/O触发接口线,颜色和接法说明和触发软件设定
- Linux 编译安装 openssl库
- Linux 复制文件命令
- ionic2中的订单详情页面
- go slice作为函数参数是值传递
- P1757 通天之分组背包 (分组背包 模板
- (附源码)计算机毕业设计SSM建筑工程管理系统
- 【Python】初学者也可以实现的人脸识别系统-0x1
- Android自动播放U盘视频
- 当前你所在的服务器更新维护尚未完成,我们将于01月16日09:00-13:00对所有服务器进行更...
- idea实现svn拉分支和合并分支的教程
- 数据大方送之全球10米土地利用数据
- 软件项目计划编制方针 (转)
- Source Code - JavaScript - 学习优雅的编码
- 1小时搞定cropper.js制作头像/图片上传、裁剪、并发送至后端
- 颜值才是王道:IKBC - C87 黑色红轴机械键盘
热门文章
- 对猫眼T100进行简单数据分析
- 太原理工大学信息与计算机学怎么样,桑胜波-太原理工大学信息与计算机学院...
- bash: vagrant_重新引入Vagrant:从PHP开始的正确方法
- 知识图谱技术发展详解(一)
- 找一个传奇服务端,斗破苍穹斗气化翼版本
- 线程池和信号量模拟酒店(旅店)预定房间
- Ubuntu 16.04 LTS安装sogou输入法详解
- 【python之父】:从他的经历中我又重拾对编程的热爱,程序员也不是一直写代码就没有出路
- 这可能最全的操作系统面试题
- 谷歌SEO优化八步走