WPS的JS宏基础(一)

基础知识

1、简单的第一个宏

//注意function只能全部用小写
function demo(){
	alert("你好!")
}

2、录制宏生成工资条

function 使用录制宏自动生成代码以JS宏为例()//使用相对引用
{
	Selection.Copy(undefined);
	ActiveCell.Offset(5, 0).Range("A1:M4").Insert(xlShiftDown, undefined);
	Application.CutCopyMode = false;
	ActiveCell.Offset(5, 0).Range("A1:M4").Select();
}

在这里插入图片描述
在这里插入图片描述

3、JS宏的基础语句

循环语句

在这里插入图片描述

function test1(){
	for(var txt of ["春花","秋月","夏风","冬雪"]){
		Console.log(txt)
	}
}
function test2(){
	for(var txt of "java"){//注意这里是逐字母输出
		console.log(txt)
	}
}
function test3()//输出所有工作表名称
{
	for(var shs of Sheets){
		Console.log(shs.Name)
	}
}

分支语句

function test6(){
	for(var sc of Range("a2:b17").Value2){
		Console.log(sc[0]+" = "+sc[1]+"分")//数组的第一序列数为0
		if(sc[1]>=90){
			Console.log("优异")
		}else{
			Console.log("普通")
		}
	}
}

4、基础应用

批量创建工作表、工作簿

function 批量创建工作表2(){
	for (var xingming of Range("a2:a17").Value2){
		if (xingming != ""){
			Worksheets.Add();
			ActiveSheet.Name = xingming[0]
		}
	}
}
function 批量创建工作簿2(){
	for(var jijie of ["春花","秋月","冬雪"]){
		Workbooks.Add();
		ActiveWorkbook.SaveAs("C:/Users/54240/Desktop/新建文件夹/"+jijie);
		//注意是右斜杆,如果是左斜杠应该写成-C:\\Users\\54240\\Desktop\\新建文件夹\\
		ActiveWorkbook.Close()
	}
}
function 批量拆分工作表到工作簿(){
	for (var sh of Sheets){
		sh.Copy();'如果没有指定工作簿,则会自动创建一个新的工作簿'
		ActiveWorkbook.SaveAs("C:/Users/54240/Desktop/新建文件夹/"+sh.Name);
		ActiveWorkbook.Close();
	}
}

判断单元格数据

function test(){
	var Arr1=[];
	var Arr2=[];
	var Arr3=[];
	var Arr4=Range("A2:b17").Value();
	for (var ar of Arr4){
		if (ar[1]>=60){
			Arr1.push(ar);//追加到后面
			Arr2.unshift(ar)//追加到前面
			Arr3.splice(Arr3.length,0,ar)
			//splice()
		}
	}
	if(Arr1.length == 0 || Arr2.length == 0){	//也可以用arr1 == false
		//JS的与(&&)或(||)非(!)
		//JS的=(==)不等于(!=)
		alert("没有数值!")
	}else{
		Range("d2").Resize(Arr1.length,2).Value2= Arr1	//注意arr1为空值的话会出错
		Range("f2").Resize(Arr2.length,2).Value2 = Arr2
		Range("h2").Resize(Arr3.length,2).Value2 = Arr3
	}

}

splice用法
push用法
unshift用法

5、JS变量的申明与赋值

变量就是内存中的一块存储空间,这个空间存储的就是变量的值。为这块空间贴个标签,这个标签就是变量名。三种声明变量的方式:const、var、let、
const 常量
let 变量申明(作用域更小)
var 变量申明(作用域更大)
var a; //申明单个变量
var b,c,d; //申明多个变量
var e=1,f=2,g=3.2 //申明多个变量并赋值数据类型

变量命名方法示例1示例2
匈牙利命名法sNamesMingZi
骆驼式命名法smallFullNamexiaoQianMing
帕斯卡命名法SmallFullNameXiaoQianMing
	const pi=3.14;
	Console.log(pi*10);

	let a=10;
	var b=20;
	Console.log(a);
	Console.log(b);
	
	
	{
		let c=1;//let申明的变量作用范围只能在括号里面
		var d=2;
		Console.log(c);
		Console.log(d);
	}
	Console.log(c);
	Console.log(d);

var e;
var f,g,h;
var i=1,j=2,k=3;

var sName="小曾";
let sMingZi="小曾";

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/127667.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Java进击框架:Spring-数据存取(七)

Java进击框架:Spring-数据存取(七) 前言事务管理声明式事务管理 DAO支持JDBC的数据访问使用JdbcTemplate控制数据库连接JDBC批处理操作封装 SQL 语句中的参数 使用R2DBC进行数据访问对象关系映射(ORM)数据访问HibernateJPA XML模式 前言 参考…

【免费送书】写博客模板

【点我-这里送书】 本人详解 作者:王文峰,参加过 CSDN 2020年度博客之星,《Java王大师王天师》 公众号:JAVA开发王大师,专注于天道酬勤的 Java 开发问题中国国学、传统文化和代码爱好者的程序人生,期待你的…

如何优化负载均衡?一文讲懂

当web应用程序增长到单服务器无法承受的地步,企业就面临着优化负载均衡的需求。简而言之,企业需要实现流量重定向,就需要从业务可靠性的需求出发,寻找一套可行的负载均衡方案,那么常用的负载均衡方案有哪些&#xff1f…

UnoCSS框架常用语法

文章目录 🍉vscode 开发插件🍉设置边框颜色🍉设置宽、高、背景色、外边距🍉设置flex🍉设置元素在滚动时固定在指定区域内🍉vscode 开发插件 vscode 开发建议安装 UnoCSS插件 🍉设置边框颜色 border-[color]: 设置边框的颜色,[color]可以是预设的颜色名称(如…

什么是 eCPM?它与 CPM 有何不同?

目录 eCPM 什么是 eCPM?它与 CPM 有何不同? 如何计算 eCPM? 该指标的主要优势有哪些? eCPM 底价 eCPM 达到多少比较合适? eCPM 每千人有效成本 (eCPM) 是指发行商(App 开发者)在 App 中每…

境电商为什么要做独立站?API一键对接秒上架瞬间拥有全平台几十亿商品和用户!

境电商为什么要做独立站?它的优势又有哪一些? 如果说我们的企业是做b two b的跨境电商,那今天这个内容一定要仔细,API一键对接秒上架瞬间拥有全平台几十亿商品和用户! 第一呢,独立站它就是我们自己做的一个…

Linux入门(二)

Linux入门(二) 1:创建文件 1.1 touch命令 使用touch命令在文件不存在时,会创建文件。同时不支持在创建文件时,写入一些内容,该文件的大小是0kb. touch test.txt 注意,无法创建多级目录文件 …

redisson中的分布式锁

文章目录 redisson中的分布式锁可重入锁(Reentrant Lock) redisson中的分布式锁 ​ Redisson是一个在Redis的基础上实现的Java驻内存数据网格(In-Memory Data Grid)。它不仅提供了一系列的分布式的Java常用对象,还提供…

力扣每日一题 ---- 2906. 构造乘积矩阵

这题很简单(一下就能想到是前缀和的提米),但是在处理12345上面需要仔细一点,本来我最开始想到的时候全部累乘在除掉当前数,但是这样就没有把12345考虑进去,如果他本身是12345的话,那么除他以外的乘积并不一定是0&#…

ubuntu22.04桌面版系统无法识别USB摄像头

虚拟机连接电脑摄像头连接失败(驱动程序错误) 本文为转载:版权归远作者所有,之所以转载是为了避免被原作者删除 巴黎铁塔下的女孩 你尽管努力,剩下的交给时间 虚拟机调用电脑的摄像头,正常情况下只需点击…

鲁大师10月新机性能/流畅/久用榜:骁龙8 Gen3一鸣惊人,双十一“6系”处理器成井喷状态

刚刚过去的10月份手机圈可谓是热闹纷呈,要数量有数量,要新品有新品,要旗舰有旗舰,要走量也有走量。10月份的大部分光芒,毫无疑问都将被骁龙8 Gen3以及重夺骁龙旗舰首发的小米 14系列身上。 骁龙8 Gen3毫无疑问,代表着骁龙旗舰处理器的又一个巅峰,从目前鲁大师后台抓取到的数据…

递归下降语法分析程序设计与实现

制作一个简单的C语言词法分析程序_用c语言编写词法分析程序-CSDN博客文章浏览阅读276次。C语言的程序中,有很单词多符号和保留字。一些单词符号还有对应的左线性文法。所以我们需要先做出一个单词字符表,给出对应的识别码,然后跟据对应的表格…

基于单片机的土壤温湿度控制系统

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 技术交流认准下方 CSDN 官方提供的联系方式 文章目录 概要 一、温湿度控制系统的整体规划2.3系统的总体构架 二、温度湿度控制系统硬件设计3.1系统硬件概述 三、 温湿度系统软件…

Redis学习(十)RedisTemplate 对各种数据类型的支持

目录 一、SpringDataRedis 简介1.1 什么是 Redis?1.2 什么是 Jedis?1.3 什么是 Spring Data Redis? 二、RedisTemplate 中 API 使用2.1 pom.xml 依赖2.2 配置文件2.3 RedisTemplate 的直接方法2.4 String 类型相关操作2.5 Hash 类型相关操作2…

APP安全测试详解

在工作过程中,我接触到了一些SDL安全提测的工作。原来我是学web端渗透比较多的,移动端这块基本没怎么试过手,结果刚开始一直踩坑,连抓包都抓不到(T▽T)。 下面记录下我遇到的部分问题和解决方法&#xff0…

《QT从基础到进阶·十八》QT中的各种鼠标事件QEvent

1、界面标题栏事件: NonClientAreaMouseButtonPress 标题栏点击事件 NonClientAreaMouseButtonRelease 标题栏释放事件 bool CustomPopDialog::event(QEvent* event) {switch (event->type()){case QEvent::MouseButtonRelease://Event of mouse releasing wind…

Python爬虫抓取微博数据及热度预测

首先我们需要安装 requests 和 BeautifulSoup 库,可以使用以下命令进行安装: pip install requests pip install beautifulsoup4然后,我们需要导入 requests 和 BeautifulSoup 库: import requests from bs4 import BeautifulSou…

奇异矩阵、非奇异矩阵

对于一个方阵A: 如果A的行列式等于0,称矩阵A为奇异矩阵如果A的行列式不等于0,称A 非奇异矩阵 也就是说,对于方阵A,如果它是满秩的,即它的秩等于矩阵的阶数,就是非奇异矩阵;如果秩小…

【 云原生 | K8S 】kubectl 详解

目录 1 kubectl 2 基本信息查看 2.1 查看 master 节点状态 2.2 查看命名空间 2.3 查看default命名空间的所有资源 2.4 创建命名空间app 2.5 删除命名空间app 2.6 在命名空间kube-public 创建副本控制器(deployment)来启动Pod(nginx-wl…

Intel x86_64 LBR功能

文章目录 前言一、CPUID指令1.1 CPUID功能简介1.2 输入参数01H返回结果1.2.1 ECX返回结果1.2.2 EDX返回结果 1.3 Linux中CPUID指令1.3.1 应用层调用cpid指令1.3.2 linux内核中调用cpuid指令 二、MSR寄存器2.1 MSR 寄存器简介2.2 RDMSR,WRMSR指令介绍2.3 IA32_DEBUGCTL MSR 寄存…