坐标正算、反算计算方法及在Excel中的VBA编程

坐标正算、反算计算方法及在Excel中的VBA编程
坐标正算、反算计算方法及在Excel中的VBA编程

特别说明

此资料来自豆丁网(https://www.360docs.net/doc/215721020.html,/)

您现在所看到的文档是使用下载器所生成的文档

此文档的原件位于

https://www.360docs.net/doc/215721020.html,/p-141115286.html 感谢您的支持

抱米花

https://www.360docs.net/doc/215721020.html,/lotusbaob

教你如何通过EXCEL VBA编写测量坐标计算程序

教你如何通过Excel VBA编写测量坐标计算程序 发布日期: 摘要:认识VBA、理解VBA,并利用Office Excel VBA编写测量坐标计算程序。 关键词:Excel VBA程序坐标编写 了解:VBA是什么?简单的说就是一种自动化语言,它可以使常用的程序自动化,可以创建自定义的解决方案。可以用Excel的宏语言来使Excel自动化运行等……Microsoft让它开发出来的应用程序共享一种通用的自动化语言——Visual Basic For Application(V BA),可以认为VBA是非常流行的应用程序开发语言Visual Basic的子集,事实上VBA 是VB应用程序的版本,尽管存在有些不同VBA和VB在结构上仍然十分相似。如果你已经了解VB会发现学习VBA非常快。相应的学完VBA会给学习VB打下坚实的基础。 理由:选择Excel VBA编程的理由是因为它的计算功能非常强大,是现今任何编程计算器无法逾越的。它运用范围广,计算速度快,计算精度高,合理化显示等。或许很多测量人员对Excel VBA还有些陌生,主要是大家寄托于计算器、电脑、手机PDA等系列软件使用。Excel VBA对于大多数测量人员而没有系统学过计算机语言程序设计的人群来讲有一定含糊,不过只要有基本数学知识、测量常识和逻辑理解的人,都能通过Excel VBA编写设计出称心如意的测量程序。 目标:基于Excel VBA的测量坐标计算程序的设计目标是将繁琐计算过程转入到计算机中,利用程序语言的重复性原理,在计算机中可将坐标计算得出更精确的结果,使坐标计算更加可靠。最终目标是让用户可以通过Excel VBA自行完成坐标计算程序设计。 认识:学习VBA到底需要什么基础和了解些什么? 学习VBA需要认识英文字母、一般的单词(如:函数所用的过程)、数学基础知识、测量常识、逻辑性思维即可。 在VBA中需要了解VBA的过程、变量、属性、方法、事件、语句等。 Excel VBA程序可以分为“录制宏、自定义函数”,由于录制宏编写计算类程序它限制了计算涵式过程,而无法达到自定义数据直接运算的目的,所以大家可以通过按钮式点击进行自定义函数过程(还可以通过窗体定义过程)。 基本常识:

Excel自定义函数(坐标反算、正算、角度化弧度)

Excel自定义函数(坐标反算、正算、角度化弧度) 在Excel中建立自定义函数 一、建立自定义函数 ㈠、录制宏: ①、打开一个新的Excel工作薄 ②、选择“工具”菜单中的“宏”子菜单,从它的下级菜单中选择“录制新宏” ③、在“录制新宏”对话框的“宏名”中输入要建立的函数名,例:Rad ④、在“保存在”列表中选择“个人宏工作薄” ⑤、左击“确定” ⑥、在“停止录”对话框中左击蓝色的小方框 ㈡、写程序代码 ①、选择“工具”菜单中的“宏”子菜单,从它的下级菜单中选择“Visual Basi c 编辑器”,双击模块* ②、将sub Rad()改写成Public Function Rad(y) ③、将下列程序代码写入(或拷贝)到 坐标反算代码 Public Function fsa(x1, y1, x2, y2) Dim aa, a, b, b1, b2, b3, a1, x, y, a0 Const pi = 3.14159265358979 x = x2 - x1: y = y2 - y1 a = Atn(y / x) If (x < 0 And y > 0) Or (x < 0 And y < 0) Then a = a + pi End If If x > 0 And y < 0 Then a = a + 2 * pi End If ab = a aa = Sgn(ab): If aa < 0 Then ab = Abs(ab) a0 = ab / pi * 180: b1 = Int(a0): a1 = (a0 - b1) * 60: b2 = Int(a1) / 100 b3 = (a1 - b2 * 100) * 60 / 10000 b = b1 + b2 + b3 fsa = b * aa '计算的角度为:°′″(12.3645---12°36′45″) End Function 将60进制角度化成弧度――2 Public Function rad(a)

利用EXCEL行高斯投影正反算

利用EXCEL行高斯投影正反算

————————————————————————————————作者:————————————————————————————————日期:

利用EXCEL 进行高斯投影正反算 在工作中常需要将大量经纬度转换成高斯平面坐标、将高斯平面坐标转换成经纬度、将6度带坐标转换成3度带坐标等坐标转换问题。面对这些问题,我们希望能找个坐标转换软件进行批量转换从而降低劳动强度、提高工作效率。然而我们通常用的软件对批量转换往往有一定的限制而且对转换数据的格式要求比较严格不容易掌握和使用。实际上我们通常用的办公软件EXCEL 就可以完成这项工作。 EXCEL 办公软件操作简单方便、易于掌握。想要用EXCEL 实现正反算,我们必须知道高斯投影正反算数学公式。(高斯投影正算实际就是把大地坐标通过高斯投影数学模 型转换为平面坐标,反之则为高斯投影反算)下面就是高斯投影公式: 正算公式: "2 322"4""4sin cos sin cos (59)22N N x X B Bl B B t l ηρρ =++-+ " 322"3 524"5 " "3 "5 cos cos (1)cos (118)6120N N N y X Bl B t l B t t l ηρ ρρ =+ +-++-+ 反算公式: 232224 24635 (539)(619045)224720f f f f f f f f f f f f f f f t t N B B y t t y t t y M N M N M N ηη=- + -+---+ 223245 35 111(12)(52824)cos 6cos 120cos f f f f f f f f f f l y t y t t y N B N B N B η= -+++++ 我们只需要把上述两个公式用EXCEL 函数写于EXCEL 表格中就可以进行计算了。其实,我们用的其他软件中高斯正反算基本全都是用这两个公式实现的,然而由于各种程序语言以及软件计算数据时精度不同所以最后结果也会有很小的误差。我们在用软件处理数据时最关心的是数据结果的精度是否满足要求。面对这个问题我们可以通过与其他坐标转换软件比较来检查一下EXCEL 数据处理的结果是否能满足我们的要求。 下表为同一组数据分别用南方CASS 和EXCEL 表进行高斯正反算后的结果对 照表: 高斯正算结果比较表: 原始经纬度坐标 EXCEL CASS 点位误差 B L X Y X Y △S

利用EXCEL进行高斯投影正反算

利用EXCEL 进行高斯投影正反算 在工作中常需要将大量经纬度转换成高斯平面坐标、将高斯平面坐标转换成经纬度、将6度带坐标转换成3度带坐标等坐标转换问题。面对这些问题,我们希望能找个坐标转换软件进行批量转换从而降低劳动强度、提高工作效率。然而我们通常用的软件对批量转换往往有一定的限制而且对转换数据的格式要求比较严格不容易掌握和使用。实际上我们通常用的办公软件EXCEL 就可以完成这项工作。 EXCEL 办公软件操作简单方便、易于掌握。想要用EXCEL 实现正反算,我们必须知道高斯投影正反算数学公式。(高斯投影正算实际就是把大地坐标通过高斯投影数学模 型转换为平面坐标,反之则为高斯投影反算)下面就是高斯投影公式: 正算公式: "2 322"4""4sin cos sin cos (59)22N N x X B Bl B B t l ηρρ =++-+ " 322"3 524"5 " "3 "5 cos cos (1)cos (118)6120N N N y X Bl B t l B t t l ηρ ρ ρ =+ +-++-+ 反算公式: 232224 24635 (539)(619045)224720f f f f f f f f f f f f f f f t t N B B y t t y t t y M N M N M N ηη=- + -+---+ 223245 35 111(12)(52824)cos 6cos 120cos f f f f f f f f f f l y t y t t y N B N B N B η= -+++++ 我们只需要把上述两个公式用EXCEL 函数写于EXCEL 表格中就可以进行计算了。其实,我们用的其他软件中高斯正反算基本全都是用这两个公式实现的,然而由于各种程序语言以及软件计算数据时精度不同所以最后结果也会有很小的误差。我们在用软件处理数据时最关心的是数据结果的精度是否满足要求。面对这个问题我们可以通过与其他坐标转换软件比较来检查一下EXCEL 数据处理的结果是否能满足我们的要求。 下表为同一组数据分别用南方CASS 和EXCEL 表进行高斯正反算后的结果对 照表: 高斯正算结果比较表: 原始经纬度坐标 EXCEL CASS 点位误差 B L X Y X Y △S 35.265996 111.44221 3904262.17 540238.1 3904262.14 540238.07 0.042

教你如何通过Excel-VBA编写测量坐标计算程序

教你如何通过Excel-VBA编写测量坐标计算程序

教你如何通过Excel VBA编写测量坐标计算程序 发布日期:2013-01-11 来源:网络作者:未知浏览次数:1704 摘要:认识VBA、理解VBA,并利用Off ice Excel VBA编写测量坐标计算程序。 关键词:Excel VBA 程序坐标编写 了解:VBA是什么?简单的说就是一种自动化语言,它可以使常用的程序自动化,可以创建自定义的解决方案。可以用Excel的宏语言来使Excel自动化运行等……Microsoft让它开发出来的应用程序共享一种通用的自动化语言——Visual Basic For Application(VB A),可以认为VBA是非常流行的应用程序开发语言Visual Basic的子集,事实上VBA是V B应用程序的版本,尽管存在有些不同VBA和VB在结构上仍然十分相似。如果你已经了解V B会发现学习VBA非常快。相应的学完VBA 会给学习VB打下坚实的基础。 理由:选择Excel VBA编程的理由是因为它的计算功能非常强大,是现今任何编程计算器无

法逾越的。它运用范围广,计算速度快,计算精度高,合理化显示等。或许很多测量人员对Ex cel VBA还有些陌生,主要是大家寄托于计算器、电脑、手机PDA等系列软件使用。Excel V BA对于大多数测量人员而没有系统学过计算机语言程序设计的人群来讲有一定含糊,不过只要有基本数学知识、测量常识和逻辑理解的人,都能通过Excel VBA编写设计出称心如意的测量程序。 目标:基于Excel VBA的测量坐标计算程序的设计目标是将繁琐计算过程转入到计算机中,利用程序语言的重复性原理,在计算机中可将坐标计算得出更精确的结果,使坐标计算更加可靠。最终目标是让用户可以通过Excel VBA自行完成坐标计算程序设计。 认识:学习VBA到底需要什么基础和了解些什么? 学习VBA需要认识英文字母、一般的单词(如:函数所用的过程)、数学基础知识、测量常识、逻辑性思维即可。

相关文档
最新文档