最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網 會員登陸 & 注冊

WPS JS宏教程,超詳細~

2022-11-29 19:26 作者:MrFlySand  | 我要投稿

0基礎入門,輸入輸出、if判斷、循環(huán)、數組、單元格操作、表格操作、文檔操作,關注了解最新教程?。?!

WPS JS代碼的運行效果


01 JS宏設置

  • 點擊左上角【文件】-倒數第2個,點擊【選項】-勾選【默認JS開發(fā)環(huán)境】

  • 方法一:選擇【開發(fā)工具】-【WPS宏編輯器】。方法二:按住Alt+F11

02函數

  • WPS JS每條語句后面可以有“;”,也可以沒有“;”,程序都可以運行。

  • 函數名可以用中文命名。

  • F5默認會執(zhí)行最后一個函數,如下代碼就會輸出MrFlySand-公眾號:小知識酷。

    • alert()就是窗口輸出,如:alert("微信公眾號:小知識酷")

    • console.log()就是控制臺輸出,如:console.log("微信公眾號:小知識酷")

    • Debug.Print()

  • 注意:在代碼中所有標點符號在要英文狀態(tài)下輸入。

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 switch語句

因為a的值是1,所以匹配case 1,輸出A;如果a=3,則輸出C;如果a=其他值,輸出none

function?Desfee(){
?var?a?=?1;
????switch?(a){
????case?1:
????????alert("A")//?當表達式的結果等于?1?時,則執(zhí)行該代碼
????????break;
????case?3:
????????alert("C")//?當表達式的結果等于?3?時,則執(zhí)行該代碼
????????break;
????default?:
????????alert("none")??//?如果沒有與表達式相同的值,則執(zhí)行該代碼
?}
????alert(Desfee)
}

07 輸入框

7.1單個值

InputBox就是輸入函數,雙引號里面的內容表示提示語

function?輸入(){
??var?num?=?InputBox("請輸入一個數");
??alert(num)
}

7.2五個參數

1、提示的內容 2、提示框的標題 3、輸入框的默認值 4、輸入框橫縱坐標軸的位置

function?輸入(){
??var?num?=?InputBox("請輸入公眾號名稱","提示框","小知識酷",200,200)
??alert(num)
}

7.3MsgBox提醒框

當你點擊“是”時,num=6,所以輸出“恭喜你關注了”; 當你點擊“否”時,num=7,所以輸出“快去微信公眾號搜索【小知識酷】關注吧”。

function?輸入(){
?var?num?=?MsgBox("你關注了【小知識酷】公眾號嗎?",jsYesNo,"提示框")
?if(num?==?6){
??alert("恭喜你關注了")
?}else{
??alert("快去微信公眾號搜索【小知識酷】關注吧");
?}
}

08循環(huán)

8.1 實例一

for(步驟1; 步驟2; 步驟4){步驟3},for循環(huán)的執(zhí)行步驟:

  1. 步驟1:定義i的初始值

  2. 步驟2:判斷i的值是否符合條件,如果符合條件,執(zhí)行步驟3;如果不符合條件,則結束。

  3. 步驟3:每次要執(zhí)行的內容1,如一些代碼程序

  4. 步驟4:每次要執(zhí)行的內容2,一般情況下是自增

function?Loop(){
????for(var?i=1;?i<=5;?i++){
????????alert(i)
????}
}

運行結果:

1 2 3 4 5

8.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]="關注不迷路",循環(huán)就會停止。

09數組

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

10.1一維數組的輸出

function?arr(){
??let?arr=?["MrFlySand","公眾號:小知識酷",'QQ',2602629646];
??Sheets.Item(1).Range("A1").Resize(1,arr.length).Value2?=?arr;
}

輸出內容

10.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)
????}
}

10.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、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]?????????
}

10.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;?????????
}

以上代碼輸出內容

10.5使用循環(huán)輸出列

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];????????????
????}
}

11類的使用

//?聲明類
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宏教程,超詳細~的評論 (共 條)

分享到微博請遵守國家法律
女性| 红安县| 信宜市| 柳州市| 黄平县| 长海县| 保靖县| 潢川县| 普陀区| 白银市| 喀喇沁旗| 新建县| 新邵县| 望奎县| 茌平县| 蓬安县| 香格里拉县| 北流市| 广安市| 图木舒克市| 通城县| 大渡口区| 嘉鱼县| 涟水县| 武定县| 杂多县| 彩票| 太白县| 揭东县| 博乐市| 景泰县| 新郑市| 太仓市| 双桥区| 瓮安县| 两当县| 宽甸| 离岛区| 大宁县| 曲麻莱县| 贵定县|