浅谈Excel表格在测绘数据处理中的应用
2017-03-17王成志尹红梅
王成志+尹红梅
摘要:Excel不仅具有强大数据处理功能,还具有强大的函数计算、数据库编辑及调用等二次开发功能,而且直观易掌握、输出方便。测绘作业数据的处理专业性强、数学模型相对复杂,但通过Excel表格计算功能可以将需要复杂专业软件实现的测绘数据处理更简单。本文通过Excel表格直观的形式,灵活多变的数据处理方式和强大的二次开发功能,介绍了 Excel在测绘工作中的应用,非常适用于测绘工作中的各种数据量大与重复性强的计算工作。
Abstract: Excel not only has powerful data processing function, but also has powerful secondary development functions such as function calculation, database editing and calling, and is intuitive, easy to master and output is convenient. The data processing of the surveying and mapping work is professional and the mathematical model is relatively complex. However, the Excel table calculation function can simplify the processing of surveying and mapping data which need complex software. This paper introduces the application of Excel in surveying and mapping work through the intuitive form of Excel form, the flexible data processing method and the powerful secondary development function. It is very suitable for all kinds of data calculation with large quantity and strong repeatability in surveying and mapping work.
關键词:Excel;测绘;数据处理;函数
Key words: Excel;surveying and mapping;data processing;function
中图分类号:TP317.3 文献标识码:A 文章编号:1006-4311(2017)07-0196-02
0 引言
Excel着重于电子表格的制作和管理功能,不仅可以存储、计算普通的数据、生成各类图表,还能使用户引用公式与函数和自定义公式与函数等高级的计算功能,完成复杂繁琐的大型运算,尤其是工作表和单元格的各种相互引用,公式、数据的自动填充与套用等,以及对测量数据进行逻辑判断和分析。Excel直观易掌握、输出方便、支持二次开发等优点非常适用于测绘工作中的各种数据量大与重复性强的计算工作。下面通过两项实例具体介绍Excel在测绘工作中灵活多变的数据处理方式和强大的二次开发功能的应用。
1 利用Excel数据库中的函数解决测绘中的计算问题
在Excel空表格内,首先根据需要处理的原始数据和计算需要,设计好总体表格框架,第一行与第一列一般用作列名和序号。把原始数据输入相应单元格,然后在需要计算结果的单元格内输入计算公式,Excel则会按照公式自动计算出结果。下面以坐标反算的计算为例来进行说明。
1.1 表格设计。第一行用作表题,第二行用作标题栏,A列为点号,BC列分别为起点坐标的X值和Y值,CD列分别为终点坐标的X值和Y值。此乃已知数据,如表1中灰色数据显示。需要求的数据为坐标差Δx、Δy、反三角函数值ATAN()、边长D、用弧度值表示的方位角、用度分秒表示的方位角为待求值,如图1中未设置底纹颜色的数字。
1.2 坐标差的计算。由于Δx=X1-X2,Δy=Y1-Y2,对应的单元格为B3、D3和C3、E3,所以在F3和G3分别输入公式“=B3-D3”和“=C3-E3”,分别点回车确定后结果会自动显示在对应的单元格里。点击F3并拖动至G3,使两单元格处于选中状态,把鼠标移到G3单元格的右下角处,当鼠标变成十字型时按住鼠标左键并向下拖动至G8,表中所有的Δx、Δy计算值都会自动填充。
1.3 边长D的计算。利用SQRT()开方函数,在I4单元格下面输入公式“=SQRT(F4^2+G4^2)”,同上用填充柄下拉完成自动计算所有边长D。
1.4 方位角的计算。在测绘中常用方位角来表示方向,而在Excel中计算出的ATAN()为弧度角值,利用绝对值公式abs(ATAN())可得到两坐标连线的象限角的值,然后根据坐标差Δx、Δy的正负号判断该直线所在的现象,在不同的象限内方位角的计算公式不同。见图2方位角的逻辑图。因为需要根据Δx、Δy的正负号判断该直线所在的现象所以要用到Excel中的逻辑函数IF()函数。具体做法如下在J3单元格输入“=IF(AND(F3>0,G3>0),abs(ATAN(G3/F3))*180/PI(),IF(AND(F3<0,G3>0),180-abs(ATAN(G3/F3))*180/PI(),IF(AND(F3<0,G3<0),abs(ATAN(G3/F3))*180/PI()+180,360-abs(ATAN(G3/F3))*180/PI())))”。
1.5 方位角的弧度值与角度值的转换。测绘工作中常需要处理角度,比如方位角、水平角和竖直角等,有的仪器是用弧度值表示,而有的是用角度值表示。当使用Excel的三角函数计算是就需要在用度、分、秒形式表示的角度与用普通小数形式表示的弧度间的相互转换。所以常常求出方位角的弧度,再将弧度转换为角度,Excel中的DEGREES函数是把弧度转换成角度的函数。单元格K3中输入“=DEGREES(J3)”即可完成转换,同上用填充柄完成各点自动计算。另外利用取整函数INT()的嵌套组合也可完成转换,即在K3输入“=INT(J3)&"°"&INT((J3-INT(J3))*60)&"′"&ROUND((60*(J3-INT(J3))-INT(60*( J3-INT(J3))))*60,0)&"″"”。特别需要注意的是各符号都是在英文编辑模式下的标点符号,否则程序公式出错。
2 利用Excel的用户自定义函数解决测绘中的计算问题
Excel有许多功能很强的计算函数,但有时没有我们需要的测量计算函数,从2003版本Excel开始支持VBA编程,VBA是Visual Basic For Application的简写形式。VBA的使用可以完成执行特定功能或是重复性高的操作。因此有的计算在工作表原有数据库中函数又无法直接实现时,则可以通过使用VBA来创建用户自定义函数的方法间接实现。Excel的自定义函数使用户根据自身需要自由进行二次开发可以大大提升它在各行业的应用,进一步增强Excel的数据处理功能。下面以计算梯形面积为例来自定义一个函数。
2.1 录制宏。在Excel的菜单栏中选择“工具”菜单中的“宏”子菜单,从它的下级菜单中选择“录制宏”。在“录制宏”对话框的“宏名”中输入要建立的函数名,默认名为“macro1”本例函数名为Area。在“保存在”列表中选择“个人宏工作薄”或“当前工作簿”后点击“确定”。当整个宏工作完成后在“停止录制”对话框中点击蓝色的小方框,结束宏的录制。
2.2 写程序代码。选择“工具”菜单中的“宏”子菜单,从它的下级菜单中选择“Visual Basic编辑器”,或按“Alt+ F11”快捷键,打开Visual Basic编辑窗口。在窗口中執行“插入→模块”菜单命令,插入一个新的模块,本文的为双击“模块3”,将sub Rad()改写成Function TriArea(a,b,c)将程序代码写入或将已写好的代码拷贝到在右边的“代码窗口”,如图3,此代码实现的功能是测量中常见的三角形面积计算问题。关闭窗口,自定义函数完成。
2.3 自定义函数应用。自定义函数会显示在“插入-函数-类别-用户定义”,以后可以像使用内置函数一样使用自定义函数。以后在知道一个三角形三边长度三个参数的情况下,利用这个TriArea()函数就可以直接计算出它的面积。
3 总结
多年来的实践表明,在测绘测量过程中,有许多地貌很复杂,且不规则,因此需测绘的点和面较多,从而产生各种各样的作业记录、排序、比对、平差、计算等问题,例如水准测量的记录和计算,土石方的计算、中桩的放样、坐标转换、面积计算、控制测量的平差计算等要处理的工作量是非常繁重的,如果通过人工处理,费时费力,准确率也不高。充分利用Excel表格的各种辅助功能便能很快捷准确的解决此类问题,不仅能够大大提高输入和计算的效率,而且减少了人为干预可使数据结果更准确。
Excel不仅具有强大数据处理功能,能够完成数据的排序、分类汇总、统计分析、生成图表等功能,还具有强大的函数计算、数据库编辑及调用等二次开发功能,为测绘内业数据的计算和整理输出等工作带来了许多方便,大大提高了数据处理效率和准确性,节省了大量人力资源和提高了工作进度。测绘作业数据处理专业性强、数学模型相对复杂,但通过Excel表格模型将需要复杂专业软件实现的测绘作业数据处理功能直观化、简单化,在基层测绘作业队伍中有着广泛的实用性。
参考文献:
[1]张述清.Excel在测量中的应用[J].测绘通报,2000.
[2]向继平.骆忠爱.Excel在导线平差计算中的应用[J].矿山测量,2012.
[3]HALLBERGB.Excel5forWindows大全[M].北京:海洋出版社,1995.
[4]贺辉跃,谢志勇.电子表格在CASS系列成图软件中的应用[J].中国科技信息,2006.
[5]郑美英,颜煜.Cass结合Excel自动生成坐标文本文件[J].科技信息(学术研究),2007.
[6]林梓鹏.Excel电子表格在测绘中的应用[J].城市勘测,2009.