智能表格脚本自动化实践尝试

卓文
卓文

创作者俱乐部成员

金山文档更新后的在线智能表格,智能文档,智能表单的功能一直都没有找到合适的场景来应用,尝试其实际工作中表现(特别是集成了现在最火的AI功能)。这次新学年开学后,430课后班的启动,就有一个需求就是:让每一天上课的教练把当天实际到课的人数上报,用于月末跟第三方机构对数结算工资费用。

最早的做法是所有教练下课后在群里@负责登记的小黄同学报备人数,然后在excel表里记录,后来进阶的方法是使用在线的金山文档,每天下课后负责登记的小伙伴@所有当值教练在在线表格填报。优点呢当然是大家一起协作填报效率提高,可以在表格中使用公式减少一些负责多班级的教练统计问题,但是呢,在填报的过程中,很容易出现填写位置错误,误删数据等操作,小黄同学每天都需要调整表格增加记录范围,这样就更加容易增加出错的情况。更重要的是小黄同学的工作效率还提高不了多少,毕竟每个月都需要做一次统计,而且是手工操作。

为此我建议小黄同学在收集数据的时候使用表单的方式来做,然后通过表单导出数据的方式进行统计会减少上面所述的问题。小黄同学的回复:“我不会!”好吧,秉承“送佛送到西”的做人理念,我觉得帮忙把这个小项目理顺,顺便把这些在线文档的使用实践一下。

首先把小黄同学的原始文档整理一下,把合并的单元格解放,做成台账记录的二维表形式,毕竟这个表格的功能由看和操作变成后台原始数据(不会公开使用),而且这种流水账式的二维表是输出透视表的原材料。

接着,我们使用智能表格中,创建一个表单应用,用于收集每天校区上课的实际人数。制作表单是一件非常容易得事情,但是这里的重点是,这个表单里面涉及的字段要符合统计的需求,而且需要考虑填写的方便度:

上课日期:用于月统计的重要字段(自动填写当天日期)

上课学校:用于统计的重要字段(单选形式,设置好选择项)

星期几:根据原始数据系统自动生成(后期可以考虑隐藏或者用公式的形式自动识别日期是星期几)

时段:有些教学点会有不同时段,但一般是默认时段(设置默认值,减少填写难度)

实到人数:这个是重点字段

备注:让教练可以填写一些特殊情况或者必要记录

月份:作为分组或者输出图表标示字段,用公式自动生成(不作收集用)

修改人记录:可以看到这个记录是谁操作的(不作收集用)

电脑端显示以及手机端显示的图例:

用分享应用的形式把链接或者二维码发送到教练群里,那么填写的规范性和操作性容易很多。之后后台会生成一个台账,形式是金山的轻维表(功能没有单纯使用轻维表多)。这个台账会根据表单数据变化自动增加记录,小黄同学只需要每天看看是否有异常的记录就可以了,毕竟还是会有教练员会填错或者失误的。

后台数据表:

生成的台账记录,就可以用智能表格的仪表盘功能输出图表了。

需要知道总的到课人数,每月的到课总人数,以及每个学校每月的到课总人数,输出大图的样式如下:

这样就可以很方便小黄同学了,工作效率就会提升很多,特别是每月的对数统计工作,而且每天的就只需要在群里做做提醒就可以了,当然如果有企业微信群的话,可以说基本上连提醒都可以自动化了,这个在后面会提出解决思路。

下面一个需求就是快速看到每天有哪些个教练是有课上的,最直接的方式就是在原始数据档中,对应写入每个负责教练:

然后就用数据透视表,展示每一所学校负责的教练以及他们是星期几有课的统计:

同样我们可以通过筛选的方式看到,譬如星期三,是有哪些学校有课,是哪些教练负责:

小黄同学就可以每天知道具体有哪些学校开课和哪些教练会上岗,在微信群的通知就更加精准。那有没有更加偷懒的方法呢?有的,智能表格提供了自动化及高级的AirScript功能可以做到定时执行脚本,使效率更更加提升,人可以更“懒”,做个勤劳的“懒蚂蚁“。

基本思路就是自动更新日期,通过日期获得是星期几,然后通过在原始数据表中的列表搜索出对应的教练,然后在所在的指定单元格输出教练名单。新版的excel和wps有动态数据组的功能,基本可以通过函数实现以上功能,但金山智能表格好像是没有的,解决思路就用的脚本语言AirScript。这又是一个挑战,AirScript是JavaScript,不熟悉,python就没问题了。

一边看文档,一边理顺思路,看官方的实践文档磕磕碰碰的把功能实现了。脚本使用位置以及自动化如下图:

效率->高级开发->AirScript脚本编辑器

由于名字比较敏感就上码了。

脚本运行成功后,就可以使用自动化设置定时运行该脚本了。本例子设置了每天早上09:00自动运行脚本。下面可以看到运行后日志。

到此整个小项目就完成了。

后面还有可以优化的地方有以下方面:

  1. 负责教练清单的旁边可以填入其对应的微信号(群里的称呼),然后加上@,例如变成@小黄同学,之后就可以每天脚本运行之后,把当值的教练列出后,生成一个@指定教练的提醒文本,如@xxx1,@xxx2,@xxx3请以上教练今天下课后填写实到人数,然后附上链接:http://xxx.xx.xx.x,直接复制文本到微信就可以做提醒了;

  1. 当然如果教练群能换成企业号群的话,那么小黄同学基本就可以躺平了,每天的提醒由自动化的程序完成发送;

对于这些简单收集系统的设计,以前一直都是使用简道云这个低代码工具完成,它的功能现在发展得比较好,例如搭积木式的系统搭建,字段的设置和内部逻辑的设置比金山强大,可以使用python设计自己的插件,一些比较难的逻辑或者需求都可以通过插件完成,特别是一些数据的处理,当然这些功能要付费才能享用,免费版就尝试不到这些方便了。

就金山文档而言能够加入了AI功能,可以使用脚本,可以自动化运行都是一个很好的功能,特别是为提高工作效率和自动化功能,十分欣赏。希望金山在脚本的语言支持上加入python支持,wps上的新的函数也需要支持。

广东省
浏览 3821
2
14
分享
14 +1
8
2 +1
全部评论 8
 
WPS 冲浪队长
WPS 冲浪队长

社区管理员

halo,方便加一下企微吗?
· 广东省
回复
 
WPS超玩会大管家
WPS超玩会大管家

创作者俱乐部大管家

哈喽,写的非常好~很有实用性和操作性~可以考虑加入创作者俱乐部哦~非常欢迎~ https://home.wps.cn/topic/3263
· 广东省
回复
卓文
卓文

创作者俱乐部成员

已经申请
· 美国
回复
 
ice y
ice y

创作者俱乐部成员

· 四川省
回复
 
张俊
张俊

WPS函数专家

建议大佬可以对代码加上注释,方便我等小白来学习代码和逻辑。
· 上海
回复
刘雎
Wps AI可以给脚本加注释
· 辽宁省
1
回复