让灵犀帮我创作
才思如泉涌
WPS宏实现动态模糊查询功能,提升数据处理效率 点击使用AI助手 了解更多
发布于 2024-12-28 liusiyang 13 编辑
AI 智能搜索
⭐【案例描述】
如下图,现有一张数据表,需要制作一个查询界面,要求能够进行全局模糊查询,并能实现边输入边查询的效果,比如输入“男”就显示所有性别为“男”的信息,输入“男本”就显示所有性别为“男”学历为“本科”的信息。
数据源:
查询界面:
⭐【操作效果】
⭐【JSA代码】
按ALT+F11打开WPS宏编辑器,复制下方代码粘贴到编辑器中。
function 模糊查询()
{
try{ //监测错误
Range('a3:f65535').Value2='' //清空结果区域
if(TextEdit1.Text.length==0) return '' //当输入框为空时不作任何操作
ar = Sheets.Item('数据源').Range('a1').CurrentRegion.Value2 //将数据源写入数组ar
ar.splice(0,1) //删除标题行
k = TextEdit1.Text.split('').join('.*') //处理查询关键字,使之能模糊查询
let br = ar.filter(v => { //对数组ar进行筛选,选择结果存入数组br
return v.join('').match(k); //将数组ar的每一行合并为一个字符串后与关键字匹配
});
Range('a3').Resize(br.length,6).Value2=br //将筛选后的值写入结果区域
}catch(err){
Console.log(err) //出错时打印错误信息
}
}
function TextEdit1_Change()//输入框变动事件
{
模糊查询() //执行模糊查询程序
}
⭐【往期内容】
⭐【素材下载】
原文链接:https://bbs.wps.cn/topic/9825