- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Excel进行测量计算的一点技巧
Excel进行测量计算的一点技巧
时间:2009-12-28 21:12:53 来源:本站 作者:覃东 我要投稿 我要收藏 投稿指南
利用Excel的强大计算功能,我们就可以解决许多测量内业计算工作,如果会用VB编程则还可以为Excel添加自定义函数,把一些测量计算的许多过程都可以扩展成Excel的函数,在使用上与Excel自带的函数方法一样。下面就简单介绍一下本人在测量内业计算过程中使用Excel的点技巧,本文由测量员网站站长覃东所写,转载请注明出自“测量员(SurM)”。
在一个工程和项目中,有一批控制点会经常在测量工作和计算过程中用到,如果在计算过程中反复输入会不方便,而且增大了出错的概率。我的做法是在一个工作簿中用一个表(sheet)来存贮所有已知点坐标信息,如图:
注意在输入的时候要反复进行核对,因以后所有的测量计算都要在这个工作簿中进行,要用到某一个点的坐标时是通过其对应的名字进行引用的,如果在已知点坐标表中的数据出错将导致以后所有的计算结果都是错误的,因此要小心谨慎。
Excel可以给每一个单元格命一个名字,命名的方法很简单,在选中一个单元格后,在输入公式的文本框左边的框直接输入就可以了,也可能通过菜单“插入”、“名称”、“定义”来完成:
在为单元格命名时要遵循一定的规则,比如控制点“BS01”的坐标X所在的单元格,我在命名时就命名为“Xbs01”,同样BS01的Y坐标所对应的单元格就命名为“Ybs01”,高程命名为“Hbs01”,只要遵循一定规则,则在以后的计算过程中在用到这个点的坐标时就可以不假思索地引用就可以了。
涉及到的其它命名规则,如点BS01至BS02间的方位角值单元格命名为“Abs01bs02”,距离则用“Dbs01bs02”。把所有已知的测量控制点的图纸上提供的关键控制点的坐标一并输入到一个表中,同时再建一个表,存贮方位角值,并把需要用到的方位角计算出来,并一一命名:
计算方位角的函数:azimuth()是通过VBA添加的,代码如下:
’方位角计算函数 Azimuth()’Sx为起点X,Sy为起点Y’Ex为终点X,Ey为终点Y’Style指明返回值格式’Style=-1为弧度格式’Style=0为“DD MM SS”格式’Style=1为“DD-MM-SS”格式’Style=2为“DD°MMˊSS”格式’Style=其它值时返回十进制度值
Function Azimuth(Sx As Double, Sy As Double, Ex As Double, Ey As Double, Style As Integer)Dim DltX As Double, DltY As Double, A_tmp As Double, Pi As DoublePi = Atn(1) * 4 ’定义PI值DltX = Ex - SxDltY = Ey - Sy + 1E-20A_tmp = Pi * (1 - Sgn(DltY) / 2) - Atn(DltX / DltY) ’计算方位角A_tmp = A_tmp * 180 / Pi ’转换为360进制角度Azimuth = Deg2DMS(A_tmp, Style)End Function
使用方法:
方位角计算函数中使用到的一个中间格式转换函数代码如下:
’转换角度为度分秒’Style=-1为弧度格式’Style=0为“DD MM SS”格式’Style=1为“DD-MM-SS”格式’Style=2为“DD°MMˊSS”格式’Style=其它值时返回十进制度值Function Deg2DMS(DegValue As Double, Style As Integer)Dim tD As Integer, tM As Integer, tS As Double, tmp As DoubletD = Int(DegValue)tmp = (DegValue - tD) * 60tM = Int(tmp)tmp = (tmp - tM) * 60tS = Round(tmp, 1)Select Case StyleCase -1 ’返回弧度Deg2DMS = DegValue * Atn(1) * 4 / 180Case 0Deg2DMS = tD Format(tM, 00) Format(tS, 00.0)Case 1Deg2DMS = tD - Format(tM, 00) - Format(tS, 00.0)Case 2Deg2DMS = tD ° Format(tM, 00) ˊ Format(tS, 00.0) Cas
您可能关注的文档
最近下载
- 第14届国际数学教育大会标识及介绍.docx VIP
- 血友病教学课件.ppt VIP
- 《费尔巴哈的提纲》课件.ppt VIP
- 05S502 室外给水管道附属构筑物国标 建筑图集 汇编 .docx VIP
- 马工程系列《教育学原理》项贤明主编第一到十章全完整版课件PPT:产生发展、教育与社会人的发展、目的培养目标、制度、课程教学德育、教师学生等(1).pptx VIP
- 2025年山东能源集团公开招聘笔试参考题库附带答案详解.docx
- 积极心理学课件:构建积极生活,提升幸福感.ppt VIP
- 碘对比剂不良反应预防和处理课件.ppt VIP
- 糖尿病肾病合并肺部感染护理查房-幻灯片.ppt VIP
- 大学生安全教育(思政版):交通安全PPT教学课件.pptx VIP
文档评论(0)