Excel vba在水准路线测量外业中的应用.docVIP

Excel vba在水准路线测量外业中的应用.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Excel vba在水准路线测量外业中的应用   摘要:水准路线外业测量工作,需要进行大量的数据处理,该文利用excel vba代码就可以使大量的计算工作瞬间完成,极大地提高了工作效率。   关键词:水准测量;代码;高效   中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2017)03-0081-02   Vba是微软公司利用VB语言来控制Excel的操作,人们要想对Excel表格进行操作,或者对Excel表格中的数据进行运算,就可以通过编写vba代码操作Excel,实现操作的自动化。水准路线外业测量工作中,需要进行大量的数据处理,且大都为重复计算,利用excelvba代码就可以使大量的计算工作瞬间完成,极大地提高了工作效率。下面将以四等水准路线为例说明excel vba的强大计算功能。   1 四等水准外业计算   1.1 视距计算   后视距:(9)=[(1)-(2)]×100 前视距:(10)=[(4)-(5)]×100   视距差:(11)=(9)-(10) 视距差累计:(12)=前一站(12)+本站(11)   1.2 高差计算   同一水准尺红、黑面中丝读数的校核:   (13)=K+(6)-(7)   (14)=K+(3)-(8)   黑面高差和红面高差计算:   黑面高差:(15)=(3)-(6)   黑面高差:((16)=(8)-(7)   黑红面高差之差:(17)=(15)-(16)   平均值计算:   平均高差:=[(15)+(16)]/2   1.3 每页计算校核   高差部分:   ?算每页所有后视读数总和与所有前视读数总和之差,其值应等于所有高差总和且等于平均高差总和的两倍   ∑[(3)+(8)]-∑[(6)+(7)]=∑[(15)+(16)]=2∑(18)   视距部分:后视距总和与前视距总和之差应等于末站视距差累计   ∑(9)-∑(10)=末站(12)   校核无误后算出总视距   总视距=∑(9)+∑(10)   将外业测量数据填于测量手簿中,备注栏数据为施测时红尺面的尺底常数。   2 代码编写   打开开发工具选项卡中的vasualbasic编辑器,插入模块编写如下,vba代码:   2.1 计算代码编写   Sub水准外业()   Dim n%,rng1,rng2,rng3,rng4,rng5,rng6   n=7   Do   Cells(n+2,3)=(Cells(n,3)-Cells(n+1,3))/10   Cells(n+2,5)=(Cells(n,5)-Cells(n+1,5))/10   Cells(n+3,3)=Cells(n+2,3)-Cells(n+2,5)   Cells(n+3,5)=Cells(n-1,5)+Cells(n+3,3)   If Abs(Cells(n+2,3)-Cells(n+2,5))5 Or Abs(Cells(n-1,5)+Cells(n+3,3))10 Then   MsgBox(你超限了)   Else   Cells(n+3,3)=Cells(n+2,3)-Cells(n+2,5)   Cells(n+3,5)=Cells(n-1,5)+Cells(n+3,3)   EndIf   If Abs(Cells(n,8)+Cells(n,11)-Cells(n,9))3 Or Abs(Cells(n+1,8)+Cells(n+1,11)   -Cells(n+1,9))3 Then   MsgBox(你超限了)   Else   Cells(n,10)=Cells(n,8)+Cells(n,11)-Cells(n,9)   Cells(n+1,10)=Cells(n+1,8)+Cells(n+1,11)-Cells(n+1,9)   EndIf   Cells(n+2,8)=Cells(n,8)-Cells(n+1,8)   Cells(n+2,9)=Cells(n,9)-Cells(n+1,9)   If Abs(Cells(n+2,8)-(Cells(n+2,9)-(Cells(n,11)-Cells(n+1,11))))5 Then   MsgBox(你超限了)   Else   Cells(n+2,10)=Cells(n+2,8)-(Cells(n+2,9)-(Cells(n,11)-Cells(n+1,11)))   Cells(n+3,10)=(Cells(n+2,8)-(Cells(n,11)-Cells(n+1,11))+Cells(n+2,9))/2   End If   

文档评论(0)

yingzhiguo + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5243141323000000

1亿VIP精品文档

相关文档