日常工作中,经常会在 Excel 和 QGIS 之间来回切换。比如:
这种操作一天可能要重复几十次,甚至上百次。操作不复杂,但是其中很多动作都是机械重复。
最近用 AHK做了三个小脚本,把这套流程优化了一下。
脚本不是特别复杂,但确实让 Excel 和 QGIS 之间的配合交互丝滑了很多。
场景一:复制完工参,进入 QGIS 自动打开查找窗口,粘贴后自动定位
这个场景应该很多网优都熟。
平时定位查看覆盖,一般流程是:
Excel 复制小区名↓切到 QGIS↓按 F3 打开查找↓粘贴↓点击“缩放到要素”↓关闭查找窗口
操作本身不复杂,但每天重复很多次。
于是用 AHK 做了一个小判断:
于是脚本会自动打开查找窗口
后面在查找框里按ctrl+v粘贴内容后
脚本自动处理剪贴板内容,有时复制单元格,内容后缀有一个不可见空元素,需手动删除
粘贴处理后的内容
点击缩放到要素范围按钮
点击关闭按钮
可以选择设置鼠标为 平移地图 或 识别要素 模式
使用脚本后,整个流程中涉及人工的部分只剩下:
复制 → 切 QGIS → Ctrl+V
中间的其他过程,脚本自动完成。
为什么还要判断“是不是经纬度”?
因为经纬度其实可以直接在 QGIS 左下角输入,这种内容就没必要弹出查找窗口。
所以脚本用了一个很简单的规则:只要包含数字.数字,就认为是经纬度
不是特别严谨,但在实际工作场景里够用了。
自动化脚本其实不一定要求“完美逻辑”,只需要:90% 的情况下判断正确,就已经能节省很多时间。
场景二:QGIS 属性复制到 Excel 后,自动调整换行
还有一个特别小,但很烦的问题。
在 QGIS 中复制图层属性后,直接粘贴到 Excel,在带 wkt_geom 的时候,是自动换行显示的,表格行高被拉伸的很大,导致无法查看全部信息,同时也影响观感。
一般只能:手动点击一下自动换行或粘贴时,右键选择粘贴为文本。
使用AHK写了个小脚本,逻辑是:只要发现剪贴板里包含wkt_geom关键字,就认为是QGIS 图层数据,在EXCEL中ctrl+v后,自动发送换行的快捷键
然后在 Excel 中:CTRL+V 粘贴后,自动换行
虽然只是少点一步,体验差别非常明显。
场景三:在QGIS 复制图层信息后,自动跳转到 Excel
日常还有一个高频操作:在 QGIS 中圈了一圈小区,复制图层属性信息后,下一步基本都是粘贴到 Excel 里整理或查看。
正常流程是:在QGIS中复制,手动切换到EXCEL窗口,再粘贴
这个动作本身不难,但也是典型的“工作中重复很多次”的操作。
优化思路:
所以这个判断刚好可以区分两类场景
AHK 适合做什么?
AHK 适合的,其实是这种:每次只多一步或几步,但是操作是每天的高频的小操作。
很多流程本来就没有技术难度,只是重复。
而重复,本身就最适合自动化。
文章中脚本已整理打包,回复关键字AHK,获取下载。