EXCEL自定义函数(反算、正算、角度化弧度)

EXCEL自定义函数(反算、正算、角度化弧度)

在Excel中建立自定义函数

一、建立自定义函数

㈠、 录制宏:

①、 打开一个新的Excel工作薄

②、 选择“工具”菜单中的“宏”子菜单,从它的下级菜单中选择“录制新宏”

③、 在“录制新宏”对话框的“宏名”中输入要建立的函数名,例: Rad

④、 在“保存在”列表中选择“个人宏工作薄”

⑤、 左击“确定”

⑥、 在“停止录”对话框中左击蓝色的小方框

㈡、 写程序代码

①、 选择“工具”菜单中的“宏”子菜单,从它的下级菜单中选择“Visual Basic 编辑器”,双击模块*

②、 将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)

Dim a1, a2, a3, a4, a5, aa

aa = Sgn(a)

If aa < 0 Then

a = Abs(a)

End If

a1 = Int(a)

a2 = Int((a – a1) * 100)

a3 = ((a – a1) * 100 – a2) * 100

a4 = (a1 + a2 / 60 + a3 / 3600) / 180 * 3.1415926535

rad = a4 * aa

End Function

 

化弧度为角度―――2

Public Function deg(a)

Dim a1, a2, a3, a4, a5, aa

aa = Sgn(a)

If aa < 0 Then

a = Abs(a)

End If

a1 = a / 3.1415926535 * 180

a2 = Int(a1)

a3 = Int((a1 – a2) * 60)

a4 = ((a1 – a2) * 60 – a3) * 60

a5 = (a2 + a3 / 100 + a4 / 10000) * aa

deg = a5

 

 

End Function

分享到 :
ESDPS(平差,测算)
上一篇 2022-05-13
ZDM破解文件
2022-05-13 下一篇