二次开发太难了,我用「脚本」投机取巧

文摘   2024-10-22 08:25   马来西亚  

『前言』

大家好,我是胡乱折腾,一事无成,BIM圈的纯路人小O。

今天要给大家分享的内容非常简单,就是唠嗑一下我使用CAD、Excel自带的「脚本」功能,配合AI工具,折腾了大半天的时间,就在这两个软件上,实现部分机械化工作的提速增效。

如果你对「脚本」这个东西没什么概念,可以暂时将它理解为「软件自带的轻量化编程」工具,「脚本」可以在不配置开发环境,不使用外部工具的情况下,使用软件特定的编程语言编写功能,让软件去执行。

二次开发对比「脚本」编写的区别,有一个不太恰当的比喻就是:「去餐馆当大厨炒菜,与在家做饭」的区别。

反正从流程上来说,就是很简单事情。简单到在我写完这篇文章的主要内容后,都没有想要发出来的欲望。

但是后来由于一个激发我虚荣心的事情,让我觉得还是可以厚着脸皮给你来点水货。

『1』CAD脚本

我们部门,每个月都需要绘制一大批的剖面图纸,而且这些剖面图纸的格式,必须符合甲方的制图要求。图纸的样式、图层设置都不能随意调整。

图纸的绘制并不复杂,但是在绘制过程中,有几个环节让我很烦躁,例如:

1.查看填充图案的「面积」数值,然后把数值填入到对应的「文字」。

2.获取剖面图上某一点到中心线的「距离」,然后把距离数值填写到对应的「文字」,而且中心线左侧的距离数值要是负数。

这两件事情都非常简单,但需要处理的图纸数量非常多,反而让我们为之投入大量时间。而且因为是人工去查看、填写数值,工作持续一段时间后,就难免会出现看错、填错数据的情况。所以最后还要投入额外的时间去做检查。

我对这些事情感动烦躁的原因是,这种对数值进行读取、填写的事情,操作过程不需要任何思考,属于完完全全的机械劳作,那就应该由机械去完成,而不是由人来完成。

所以我在第一次接触到这项工作的时候,就希望能找到自动化,或者半自动化的方法来处理它们。

关于如何实现软件操作层面的自动化操作,那当然是进行二次开发最简单直接。

但我遇到的第一个问题是,我对CAD的二次开发一无所知,于是我根据在「BIMer去做结算,BIM能帮多少忙?」的经验,选择了使用「CAD脚本」来尝试实现我想要的效果。

然后我遇到的第二个问题是,我对「CAD脚本」编写同样一无所知。

所以我继续根据在「BIMer去做结算,BIM能帮多少忙?」的经验,花了1个多小时的时间,让AI给我写出了满足需求的「脚本」。

在「脚本」可以获取填充图案的面积数值,等我再点击对应的「文字」后,就能把面积数值覆盖到文字内容。

至于填写距离中心线数值的「脚本」,操作基本一致,也是点几下鼠标就能完成一个数值的填写。

我没有准确计算过,使用这两个「脚本」能提效多少,我只能说,同样处理60张图纸,如果要我认为查看、填写数值,我很快就会觉得累,然后拿起手机摸鱼,磨磨蹭蹭可以整1个多小时。

但使用了「脚本」之后,因为我只需要不停按鼠标,我可以一口气把60张图纸都处理完,再去集中精神摸1个多小时的鱼。

虽然最终效果也只能算是半自动化,但已经减少了大量需工作时间,同时还杜绝了人为的查阅、录入错误。最重要的是解放了大脑。让整个办公室都洋溢着愉悦的氛围。

同事们在第一次使用这个「脚本」的时候,甚至觉得我是一个天才,这也是让我厚着脸皮把这篇水货分享给你的「激发我虚荣心」的事情。

但我唯一感到奇怪的是,在「脚本」的帮助下,我只需要不停地点击鼠标,完全不用动脑子的操作,好像反而让自己变得更加机械。

但我宁愿无脑而机械地笑,也不要有脑子但痛苦地哭。

『2』Excel脚本

CAD绘图的问题解决后,我发现这个「AI+脚本」的小功能开发套路,其实适用于所有支持「脚本」功能的软件。例如:Excel。

我每天都会从工地现场的同事那里,得到当天的小型预制构件生产数据。比如:某某构件今天生成了多少个,所有构件一共使用了多少混凝土。

然后我要把这些数据,填入到专门用来记账的Excel表格中,计算现场当天的设计图纸理论使用混凝土量,再与实际使用混凝土量进行对比。

同时,还需要把当天的各类构件的生产信息,比如构件类型、尺寸、生成个数、混凝土用量,编辑成甲方要求的日志格式,发送到项目群中。

这个事情,跟上面提到CAD绘制一样,属于「简单而机械,让人烦躁」的工作。

因为数据是现成的,日志格式也是标准的。那为什么需要我亲自把当天的数据,转换成日志呢?

而且根据我的实践经验,我经常会写错日志上的数据,这当然是我自己粗心大意的问题。所以我更希望使用自动化的方法处理这件事情,就算以后再次出错,也可以理所当然地把责任推卸给电脑。

于是,我还是使用「AI+脚本」的套路,花了一个下午的时候,让AI给我写了一个Excel的「VBA脚本」,可以基于Excel表格生成日志。

『End』一些心得
我在实际工作中已经使用「AI+脚本」的套路,整了好几个提效的小功能。但这反而让我更深刻体会到它的局限性。

它只适合一些「工作流程短,重复执行次数多,机械化程度高,能用三言两语说明清楚逻辑与需求」的工作上。

例如基于国外CAD图纸进行钢筋算量这种扯淡工作,目前就不适合使用这个套路来解决。

另外,我遇到问题的时候,也不会第一时间就想着使用这个套路。而是先去查找有没有现成的解决方法。

现在市场上有很多基于AI的搜索引擎,它们相比于传统的搜索引擎,能把网络信息整合后,再给我反馈更准确、有效的答案。

如果使用搜索引擎找不到解决方法,我就会去摸鱼群里摇人,邀请大佬们伸出援手。

实在没有办法了,再去使用这个套路。

AI生成的脚本,一般前几次都达不到要求。我只能不断给AI反馈脚本的测试结果。同时保持使用更清晰,更有逻辑性的语句表达自己想实现的效果。希望AI能快点让我得偿所愿。

不过我觉得更重要的是,得学会适时放弃。

毕竟依靠这种投机取巧的伎俩,失败几乎是必然的,这个世界上没有那么多好结果。

装BIM
自言自语的地方