第1个回答 2012-10-25
发一段VBA代码公式给你,计算任意曲线切线方位角的:
Sub FWJ()
If Sheets("Sheet1").Cells(2, 2) = "" Or Sheets("Sheet1").Cells(3, 2) = "" Or Sheets("Sheet1").Cells(4, 2) = "" Or Sheets("Sheet1").Cells(5, 2) = "" Or Sheets("Sheet1").Cells(6, 2) = "" Or Sheets("Sheet1").Cells(7, 2) = "" Or Sheets("Sheet1").Cells(2, 2) = 0 Or Sheets("Sheet1").Cells(3, 2) = 0 Or Sheets("Sheet1").Cells(4, 2) = 0 Or Sheets("Sheet1").Cells(5, 2) = 0 Or Sheets("Sheet1").Cells(6, 2) = 0 Or Sheets("Sheet1").Cells(7, 2) = 0 Then
Sheets("Sheet1").Cells(8, 2) = "要素不能为空或0"
Else
k = Sheets("Sheet1").Cells(7, 2)
d = Sheet1.Cells(2, "B") '起点里程
z = Sheet1.Cells(3, "B") '止点里程
q = Sheet1.Cells(4, "B") '起点半径
r = Sheet1.Cells(5, "B") '止点半径
a = Dms(Sheet1.Cells(6, "B")) '起点方位角
c = 1 / q + (1 / r - 1 / q) * Abs(k - d) / Abs(z - d)
e = a + 28.64789 * (1 / q * 1 + c) * Abs(k - d)
Sheets("Sheet1").Cells(8, 2) = DDms(e)
End If
End Sub
释义:
Sheets("Sheet1").Cells(8, 2) 表示输出方位角、其中e为计算结果。
Dms为角度转换,将度分秒转换为度(也就是说用计算器直接输入成度分秒即可)。
DDms为度转换为度分秒(计算器没必要转换)。