WPS JS宏学习笔记各类方法使用

文章介绍了ExcelVBA中数组的every和filter方法,用于数据处理。同时,讲解了箭头函数的自调用方式以及如何传参。此外,还详细说明了主窗体dialog的调用、控件的点击事件响应,特别是下拉框的设置与在单元格上的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、数组

1、every方法

function 数组every(){//检测数值元素每个是否都符合条件
	var arr = Range("a2:a5").Value2.flat();
	if(arr.every(item=>{return item>=60})){
		
	}
}

2、filter方法

二、箭头函数

1、自身调用自身

function 箭头函数()
//箭头函数自身调用自身的方法,箭头函数不能定义在外部,
//只能放在一个函数里面,用括号括起来
{
	/*(obj=>{//不传参数
		obj.Interior.ColorIndex=3;//设置底色
		obj.Value2=123;//设置值
		obj.Borders.Color=1;//设置边框
	})(Range("a1:a10"))*/
	
	((obj1,x)=>{//传参数要加括号
		obj1.Interior.ColorIndex=4;//设置底色
		obj1.Value2=x;//设置值
		obj1.Borders.Color=40;//设置边框
	})(Range("b1:d10"),888);//这里就是调用这个函数
}

三、控件的使用

1、主窗体dialog调用

插入一个主窗体,在代码编辑页面点击上方插入,选择用户窗体,会自动创建一个模块,并创建一个函数:

//用户窗体的事件函数
function UserForm1_CommandButton1_Click()
{
   
}
//调用主窗体
function 调用窗口空间(){
	UserForm1.StartUpPostion=2;//设置主窗体显示在屏幕中间
	UserForm1.Show();//显示主窗体
}

2、点击事件的弹窗

在代码编辑页面,双击控件,会自动创建对应的点击函数,使用下面方法可以创建弹窗:

//将该方法放入对应的事件函数中
MsgBox("点击了");

3、下拉框

1、设置调用下拉框

function 调用窗口空间(){
	设置下拉内容("c",UserForm1.ComboBox1);//调用下拉框下拉内容
	UserForm1.StartUpPostion=2;//设置主窗体显示在屏幕中间
	UserForm1.Show();//显示主窗体
}

function 设置下拉内容(C,Combox){
	//Set方法可以快速去重
	var arr = Array.from(new Set(Sheets("Sheet3").UsedRang.Colums(C).Value2.falt()));
	Combox.AddItem("全部",0);//将新项目添加到指定下拉框中
	arr.forEach((item,key)=>{//调用数组的每个函数,并回传
		if(key==0){
			reture 0
		};
		if(item==undefined){return 0};
		Combox.AddItem(item,key);
	})
	Combox.Text="全部";
	
}

2、在单元格上写下拉框的方法

在单元格上覆盖一个下拉列表的控件,使用函数SheetSelectionChange事件来操作

<think>好的,用户的问题是关于如何在WPS使用创建窗体进行数据录入。我需要先整理已有的引用信息,看看是否有相关的知识点。引用[2]提到了用VBA编写数据录入的代码,但用户可能使用的是JS,因为引用[1]和引用[3]都涉及WPSJS。不过,WPS通常支持两种语言:VBA和JS,但不同版本可能有差异。需要明确用户的环境。 首先,用户可能希望使用类似VBA的窗体功能,但WPS中可能不支持直接创建VBA窗体。引用[3]提到用JS调用外部脚本,比如Node.js或Python,这或许是一种替代方法。不过,直接使用JS创建窗体可能比较复杂,需要利用WPS提供的API。 接下来,步骤应该是:启用功能、创建用户窗体、编写数据录入逻辑、绑定事件。但WPS JS可能没有内置的窗体设计器,所以可能需要通过对话框或自定义界面来实现。引用[2]中的VBA示例可能需要调整成JS代码,但语法差异较大,需要找到对应的JS方法。 另外,数据存储的位置是关键,比如工作表的具体位置,如何将窗体输入的数据写入单元格。需要指导用户如何用JS操作工作表,例如使用Range方法。同时,引用[1]提到启用的文件格式是xlsm,所以要提醒用户保存为正确的格式,并调整安全设置。 可能的问题点:WPS JS是否支持创建窗体控件,或者是否需要借助HTML或自定义对话框。如果JS本身不支持窗体,可能需要用其他方法,比如在表格中创建按钮,弹出输入框,然后收集数据。这可能会限制界面复杂度,但适合简单的数据录入。 最后,需要确保代码示例正确,并提醒用户启用和备份数据,如引用[2]所述。可能还需要考虑用户是否熟悉JS语法,是否需要更详细的步骤说明。</think>### 如何在WPS使用创建窗体进行数据录入 #### 一、启用功能 1. **文件保存格式**:将文件另存为`.xlsm`格式以支持功能[^1] 2. **启用权限**:打开文件时需在安全提示中选择“启用”[^2] 3. **设置信任中心**:若需自动运行,需在WPS设置中调整安全级别为“低”或“中”[^1] #### 二、创建简单窗体的步骤(基于JS) 1. **插入按钮控件** - 在表格中插入按钮,右键选择“指定” - 新建JS函数(示例代码见下方) 2. **编写窗体逻辑** ```javascript function ShowInputDialog() { let input = Application.InputBox("请输入数据(格式:姓名,年龄,部门)", "数据录入", "", 0, 0, 0, 0); if (input !== false) { let data = input.split(","); let sheet = Application.ActiveSheet; let lastRow = sheet.Cells(sheet.Rows.Count, 1).End(-4162).Row + 1; // 找最后一行 sheet.Range("A" + lastRow).Value = data[0]; sheet.Range("B" + lastRow).Value = data[1]; sheet.Range("C" + lastRow).Value = data[2]; } } ``` 3. **绑定事件** ```javascript function Workbook_Open() { // 打开工作簿时自动创建按钮(需配合VBA模块触发) } ``` #### 三、进阶窗体设计(需VBA支持) 1. **插入用户窗体** - 通过开发工具→插入→用户窗体创建界面 - 添加文本框、标签、按钮等控件 2. **VBA示例代码** ```vba Private Sub CommandButton1_Click() Dim lastRow As Long lastRow = Sheet1.Cells(Rows.Count, 1).End(xlUp).Row + 1 Sheet1.Cells(lastRow, 1).Value = TextBox1.Text Sheet1.Cells(lastRow, 2).Value = TextBox2.Text Unload Me End Sub ``` #### 四、注意事项 1. **兼容性问题**:WPS对VBA支持有限,建议优先使用JS[^3] 2. **数据验证**:可添加正则表达式验证输入格式 3. **错误处理**:建议增加`try...catch`块防止意外中断
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值