zoukankan      html  css  js  c++  java
  • WPS JS宏

    • 这些代码都是我找规律得到的语法,有些并不准确,网上的资料也是非常的少,不过能用就行。如果有错误请访问【博客园 https://www.cnblogs.com/MrFlySand/p/15693770.html 】滑到文章底部联系QQ。

    JS宏设置

    • 点击左上角【文件】-倒数第2个,点击【选项】-勾选【默认JS开发环境】
    • 方法一:选择【开发工具】-【WPS宏编辑器】。方法二:按住Alt+F11

    函数

    • WPS JS每条语句后面可以有“;”,也可以没有“;”,程序都可以运行。
    • 函数名可以用中文命名。
    • F5默认会执行最后一个函数,如下代码就会输出MrFlySand-飞沙
    • alert()就是窗口输出
    • console()就是控制台输出
    • Debug.Print()
    function 输出2(){
        alert("MrFlySand-飞沙-520")
    }
    function 输出(){
        alert("MrFlySand-飞沙")
    }
    

    单元格

    读取单元格/输出单元格

    • Sheets.Item()是选中工作表,excel默认的第一个工作表名称也是Sheet1。圆括号里面可以是数字和中文(中文要用双引号里面),如果里面是一个数字n,表示它是第n个表;如果里面是中文“飞沙的成绩”,则会选中“飞沙的成绩”的工作表。
    • 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)
    }
    

    运用库函数和给单元格赋值

    • 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);
    }
    

    设置单元格的颜色和背景

    function MyFun(){
        //选中B4单元格
        Range("B4").Select();
        //圆括号里面就是选择B4单元格的文字
        (obj=>{
        	//改变这个字体的颜色
            obj.Color = 2;        
        })(Selection.Font);
        //圆括号里面就是选择B4单元格的内部背景
        (obj=>{
        	//改变这个背景的颜色
            obj.Color = 65536;
        })(Selection.Interior);
    }
    

    数组

    • 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; 
    }
    

    一维数组的遍历

    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)
        }
    }
    

    二维数组的输出

    • 输出下方的表格

    代码说明:

    • 在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、2
      • arr[1].length获取2班的人数,有2个学生,分别是3、4
      • arr[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]         
    }
    

    // 声明类
    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();
    }
    

    742485425 复制数字打开支付宝免费领红包

  • 相关阅读:
    cf492D Vanya and Computer Game
    cf492C Vanya and Exams
    cf492A Vanya and Cubes
    bzoj2038 [2009国家集训队]小Z的袜子(hose)
    bzoj3781 小B的询问
    bzoj1858 [Scoi2010]序列操作
    bzoj1060 [ZJOI2007]时态同步
    算法学习心得
    bzoj1054 [HAOI2008]移动玩具
    bzoj3437 小P的牧场
  • 原文地址:https://www.cnblogs.com/MrFlySand/p/15693770.html
Copyright © 2011-2022 走看看