← 返回主页 📒 记录本 📷 照片墙 🛠️ 工具
🌙 暗色

技术博客

工程测量与 VBA 自动化经验笔记
2026-08 · 工程台账

Excel VBA 工程项目台账系统:从零搭建思路

台账页、资料页、示意图页三层结构怎么分工;示意图测量点如何动态适配 12/10/8/6/4;图片批量插入与文件名自然排序的坑。

阅读全文 →
2026-08 · 线路测量

高铁线路坐标正/反算与断链处理笔记

沿线路中心线连续弧长里程体系;JD8 前短链 0.049 m 的来龙去脉;反算桩号时如何正确归算断链后里程。

阅读全文 →
← 返回列表

Excel VBA 工程项目台账系统:从零搭建思路

冯建峰 · 2026-08 · 工程台账

做工程项目台账,核心是把外业记录和内业资料用一套数据串起来。我的思路是分三页:

一、三层页面分工

二、示意图测量点的动态适配

现场测量点数量会变化,示意图不能写死。默认 12 个点,按实际数据**动态缩减为 10 / 8 / 6 / 4**,靠 VBA 判断有效行数后控制绘图区域。

三、两个最容易踩的坑

四、编码与注释

文件统一用 GBK/GB2312 编码,VBA 全程中文注释,避免出现中文乱码,也方便同事接手维护。

' 自然排序比较函数(按数值段拆分)
Function 自然比较(a As String, b As String) As Integer
    ' 将 "12_放样.jpg" 拆成 数字段+文本段 逐段比较
End Function

整套系统跑顺之后,台账一填、资料页和示意图页自动出,省下的全是重复劳动。

← 返回列表

高铁线路坐标正/反算与断链处理笔记

冯建峰 · 2026-08 · 线路测量

高铁线路坐标计算,关键是里程体系的定义。我这套系统采用沿线路中心线连续弧长里程,全线总长 20699.951 m。

一、正算:里程 → 坐标

给定任意里程,先判断落在哪一段(直线 / 缓和曲线 / 圆曲线),再用对应的参数方程求坐标与切线方位角。带缓和曲线时:

二、反算:坐标 → 里程

给定坐标反求最近里程,本质是迭代逼近——先粗定位到邻近里程,再在切向做一维搜索收敛。

三、断链处理(重点)

本线在 JD8 前切线存在一处断链:

断链前里程 11350.000
断链后里程 11350.049
差值       +0.049 m  (短链)

断链意味着"同一个物理点有两套桩号"。正反算时必须先判断输入里程位于哪个断链区间,用断链后里程做坐标解算,否则会差出 0.049 m——对高铁来说就是不容许的偏差。

换算关系很简单:断链后 = 断链前 + (断链后桩号 − 断链前桩号),但一定要确认待换算里程在该断链点之后。

这套正反算逻辑我后来也做成了网页版小工具(见主页「🛠️ 工具」),手机上也能随手算。