EXCEL中計算方位角距離公式

2023-01-10 05:15:03 字數 5401 閱讀 3944

電子**中求方位角的公式

結果顯示為度格式的計算式:

=(pi()*(1-sign(b3-$b$1)/2)-atan((a3-$a$1)/(b3-$b$1)))*180/pi()&"°"

excel中求方位角公式:a1,b1放起始點座標a3,b3放終點座標。

結果顯示為度分秒格式的計算式:

=int((pi()*(1-sign(b3-$b$1)/2)-atan((a3-$a$1)/(b3-$b$1)))*180/pi())

&"°"&int(((pi()*(1-sign(b3-$b$1)/2)-atan((a3-$a$1)/(b3-$b$1)))*180

/pi()-int((pi()*(1-sign(b3-$b$1)/2)-atan((a3-$a$1)/(b3-$b$1)))*180/

pi()))*60)&"′"&int((((pi()*(1-sign(b3-$b$1)/2)-atan((a3-$a$1)/(b3-

$b$1)))*180/pi()-int((pi()*(1-sign(b3-$b$1)/2)-atan((a3-$a$1)/(b3-

$b$1)))*180/pi()))*60-int(((pi()*(1-sign(b3-$b$1)/2)-atan((a3-$a$1)/

(b3-$b$1)))*180/pi()-int((pi()*(1-sign(b3-$b$1)/2)-atan((a3-$a$1)/

(b3-$b$1)))*180/pi()))*60))*600)/10 &"″"

其中:a1,b1中存放測站座標,a3,b3放終點座標。

上面的計算出來的是度分秒格式,也就是字串格式,不能用來計算,只是用來看的喲!

下面這個簡單一點:

=(pi()*(1-sign(b3-b1)/2)-atan((a3-a1)/(b3-b1)))*180/pi()

excel中求方位角公式:a1,b1放起始點座標a3,b3放終點座標。

求距離公式:

=round(sqrt(power((a3-$a$1),2)+power((b3-$b$1),2)),3)

一、度分秒值換算為度

首先要將單位符號都去掉,形成1112233的形式,分秒小於十的要在其前補0,必須如此,不然無法判斷分與秒的位置。

假設原始資料在a列,第乙個資料在a2單元格。

在你需要放入轉換結果的乙個單元格內(最好是與a2同一行,這樣有大量原始資料要轉換時,直接下拉就可以轉換所有資料),輸入:

=value(mid(if(len(a2)=6,concatenate("0",a2),a2),1,3))+value(mid(if(len(a2)=6,concatenate("0",a2),a2),4,2))/60+value(mid(if(len(a2)=6,concatenate("0",a2),a2),6,2))/3600

回車即可。

下面解釋轉換方法和函式意義。

以1112233為例。

演算法是111+(22/60)+(33/3600),即把分、秒都算成度後相加。

mid:意為選擇指定的字元,具體寫法為mid(資料,順位,字元數),先指定1-3位(度位),再指定4-5位(分位)/60,再指定6-7位(秒位)/3600。

value:意為轉換成為數值,這樣才能進行運算。

關鍵問題在於,度有可能是2位數,如果這樣整個數就是6位,上例算式中的

if(len(a2)=6,concatenate("0",a2),a2)

就是處理這樣的問題的。意思為如果整個是6位數,就在其前補個0,若不是6位,就直接用原來的數值(呵呵,在中國及周邊沒有6位和7位以外的經緯度,現在這個演算法適用於6位和7位的經緯度)。

if:條件函式,用法:if(logical_test,value_if_true,value_if_false),其中logical_test為判斷條件,在本例中為len(a2)=6,滿足條件執行value_if_true,不滿足則執行value_if_false。

len:為返回字元數的函式。

concatenate:為合併字元函式,寫法為:concatenate(text1,text2,...),如要直接使用文字字元,就在其上加英文引號。

二、度轉換為度分秒

假設原始資料在a列,第乙個資料在a2單元格。

在你需要放入轉換結果的乙個單元格內(最好是與a2同一行,這樣有大量原始資料要轉換時,直接下拉就可以轉換所有資料),輸入:

=concatenate(int(a2),if(int((a2-int(a2))*60)<10,concatenate("0",int((a2-int(a2))*60)),int((a2-int(a2))*60)),if(round(((a2-int(a2))*60-int((a2-int(a2))*60))*60,0)<10,concatenate("0",round(((a2-int(a2))*60-int((a2-int(a2))*60))*60,0)),round(((a2-int(a2))*60-int((a2-int(a2))*60))*60,0)))

回車即可。

解釋如下:

以112.1234567度為例。

使用concatenate文字組合函式,將分別計算出的度、分、秒組合在一起(其用法參照前一帖)。

本例中的int(a2),取的是112,即度值;if(int((a2-int(a2))*60)<10,concatenate("0",int((a2-int(a2))*60)),int((a2-int(a2))*60))取的是分值;if(round(((a2-int(a2))*60-int((a2-int(a2))*60))*60,0)<10,concatenate("0",round(((a2-int(a2))*60-int((a2-int(a2))*60))*60,0)),round(((a2-int(a2))*60-int((a2-int(a2))*60))*60,0)),取的是秒值。

比較關鍵的一點是,分、秒在計算完後可能會小於10,這樣就會出現本應為7位的度分秒值成了6位或5位,因此在計算分和秒時,加了乙個條件語句,即若其值小於10,就在前面補個0。int((a2-int(a2))*60)<10是判斷分值是否小於10;round(((a2-int(a2))*60-int((a2-int(a2))*60))*60,0)<10是判斷秒值是否小於10。

int是取整函式,可對任意實數向下取整為最接近的整數,向下的意思為往小的方向,如=int(3.38)返回3,=int(-3.38)返回-4。

該函式與trunc函式都有取整的功能,trunc函式可以按需要擷取數字的小數部分,而int函式則將數字向下捨入到最接近的整數。int和trunc函式在處理負數時不同點:trunc(-4.

3,0)返回-4,而int(-4.3)返回-5。

round為四捨五入函式,本例中秒值不再留有小數,因此將其四捨五入了,這就是計算分值的時候用int函式,而計算秒值的時候用round函式的原因。該函式的寫法為round(number,num_digits),其中的number是待處理的數值(也可是表示式的結果),num_digits是保留的小數字數。本例中的小數保留為0。

三、求度分秒範圍轉度的中心座標值

這裡只算經度或緯度的一項,要算另一項,只需改動原始資料位置,重複操作即可。

假設原始資料在a列和b列,b列資料比a列資料大。第乙個資料項在a2和b2。

每個值的演算法原理是:

將經緯度都設立成7位,將度、分、秒都折算成度,轉換方法參照前帖。用度來計算的好處是不會產生度分秒的進製問題,而同時度也可在上圖時使用,若想將度轉換成度分秒,就參照本人的前一帖。

結果的演算法是(b2-a2)/2+a2。

在你需要放入轉換結果的乙個單元格內(最好是與a2、b2的同一行,這樣有大量原始資料要轉換時,直接下拉就可以轉換所有資料),輸入:

=((value(mid(if(len(b2)=6,concatenate("0",b2),b2),1,3))+value(mid(if(len(b2)=6,concatenate("0",b2),b2),4,2))/60+value(mid(if(len(b2)=6,concatenate("0",b2),a2),6,2))/3600)-(value(mid(if(len(a2)=6,concatenate("0",a2),a2),1,3))+value(mid(if(len(a2)=6,concatenate("0",a2),a2),4,2))/60+value(mid(if(len(a2)=6,concatenate("0",a2),a2),6,2))/3600))/2+value(mid(if(len(a2)=6,concatenate("0",a2),a2),1,3))+value(mid(if(len(a2)=6,concatenate("0",a2),a2),4,2))/60+value(mid(if(len(a2)=6,concatenate("0",a2),a2),6,2))/3600

回車即可。

度分秒轉換

請教:在excel中度分秒(六十進位制)如何轉換為度(十進位制)。

lm6692朋友的方法不錯呀 int(b7) int((b7-int(b7))*100)/60 ((b7-int(b7))*100-int((b7-int(b7))*100))/36

世界上最遠的距離不是天涯海角,而是我在你身邊,你卻不知道我愛你! 我也被這個問題難住了,沒辦法就把度分秒各放一列,然後用公式轉換一下再用。

你用int()函式--取整函式試試?比如說275°30′27″表示為275.3027,設該值為a,那你首先用a-int(a)=0.

3027,設該值為b,那麼1ing(100b)就是分離出來的分數,其除以60即得到0.5°,對於秒的轉換可依此思路進行,最後全部相加就轉為十進位制了,整個過程可以通過函式的巢狀進行。最終公式如下:

int(b7) int((b7-int(b7))*100)/60 ((b7-int(b7))*100-int((b7-int(b7))*100))/36

可以轉換,只是第一次輸入感覺麻煩,不過以後的就通過複製可簡單多了,謝謝

lm6692朋友的方法不錯呀 int(b7) int((b7-int(b7))*100)/60 ((b7-int(b7))*100-int((b7-int(b7))*100))/36

世界上最遠的距離不是天涯海角,而是我在你身邊,你卻不知道我愛你! 5樓的方法是最有效的.

不錯,這樣在excel中就可以輸入轉換了!

一、角度的度分秒與小數點格式互相轉換 excel能將角度轉換成度"°"分"′"秒"″"格式嗎? 如將:120.

999722222222°轉換成120°59′59″. 32.55°轉換成32°33′0″ 我知道可以用函式radians將角度轉換為弧度,但我們工程測量上用到的角度計算是以度分秒(比如:

126°12′36″)來記錄並進行計算的,在excel中怎樣用這些資料進行計算? 1.設定公式「=a1/24」,並將單元格的格式設定為自定義格式:

[h]°mm′ss″ 2.直接設定公式=text(a1/24,"[h]°mm′ss″") 第1種方法,方便於在計算時將度分秒轉為度,這時只需乘24即可第2種方法,度分秒轉為度時,需要用公式=substitute(substitute(substitute(b124 (度分秒符號用單位軟鍵盤上的符號)

方位角計算方法

與p點相對應的緩和曲線邊線點的座標為 2 8a 8b 式中 57.29577951,為弧度轉換為度的係數 d為道路的半寬。當 0時,式 7b 取 號,當 0時,式 7b 取 號。當計算外邊線點的座標時,式 8a 8b 等號右邊第二項前的符號分別取 號 當計算內邊線點的座標時,式 8a 8b 等號右邊...

方位角和方向角

一 方向角 1。定義 一般是指以觀測者的位置為中心,將正北或正南方向作為起始方向旋轉到目標的方向線所成的角 一般指銳角 通常表達成北 南 偏東 西 度。2。度量 方向角係分由南北起算,角度值在零度及九十度之間。方向角之表示方式乃是在角度值之前冠以南北字樣,其後則書出東西字樣。方向角與方位角一樣,亦根...

7上4 13《方位角》教學反思

課堂設問 提問精心研究 在解決船隻方位這個實際問題時 問題是循序漸進的,並且加以提示 結合多 讓學生更形象的找出規律 在航行 測繪等工作以及生活中,我們經常會碰到上述類似問題,即如何描述乙個物體的方位 可讓學生回憶學過的描述方法,師生共同 解決問題的辦法 不斷移動可疑船的位置,讓學生描述緝私艇的航線...