Dëshironi të dini mënyrat për të llogaritni distancat midis koordinatave në Excel? Këtu do t'ju mësojmë se si të llogarisni distancën në Excel, duke përdorur Latitude dhe Longitude, në këtë tutorial. Ju ftojmë të qëndroni me ne.
Këtu mund të mësoni më shumë rreth: Si të krijoni një tabelë vektoriale në Excel. 3 Hapat për të ndjekur
Metodat për llogaritjen e distancave midis koordinatave në Excel
Kërkimi për një zgjidhje të saktë për këtë problem më ka çuar në faqe të shumta dhe në përpjekje për zgjidhje. Një listë e gjatë e faqeve të lidhura është përfshirë në fund të gjithë kësaj, por ato më të rëndësishmet për të cilat kemi gjetur se zgjidhja më e mundshme është llogaritja e distancave midis koordinatave në Excel.
Tani, le të shohim metodat më të mira për të llogaritur distancat midis koordinatave në Excel:
Llogaritni distancat midis koordinatave në Excel (Gjerësia dhe gjatësia gjeografike, formulat)
Një formulë që pranohet për të dhënë rezultate me saktësi milimetrike njihet si formula e Vincenty. Natyrisht, saktësia e rezultateve varet kryesisht nga saktësia e çifteve gjerësi/gjatësi që përshkruajnë dy pikat.
Pse gjithë bujë për saktësinë? Epo, nga ajo që kemi parë nga formulat e tjera, veçanërisht ato të shkruara si një funksion i vetëm fletë pune, vlerat e tyre ndryshojnë mjaft për ato që mund të konsiderohen situata. "kritika për jetën".
Ato janë zakonisht të shkurtra me një numër metrash, zakonisht rreth 20 deri në 30 këmbë për milje statutore, dhe pasi të kemi fluturuar vetëm 30 ose 40 milje, nuk do të na shqetësonte të zbrisnim disa qindra metra larg fundit të afrimit të një piste, aq më pak duke qenë larg për më shumë se 7 milje në një udhëtim midis Los Angeles dhe Honolulu.
Meqenëse tendenca e përgjithshme kur kemi të bëjmë me këto lloj llogaritjesh është "e matni me mikrometër, e shënoni me shkumës dhe e prisni me sëpatë“Ajo që kemi këtu është një mikrometër shumë i saktë për të filluar procesin e matjes.
Metoda 1: Llogaritni distancat midis koordinatave në Excel (Formulat për distancën)
Ka shumë funksione të fletëllogaritjes Excel që do të kthejnë një titull fillestar nga një pikë në pikën e destinacionit për një rrugë të Rrethit të Madh midis tyre dhe formula të ngjashme për të kthyer distancën midis tyre.
Por bazuar në përvojën e përdorimit të tyre dhe krahasimin e tyre me distancat e matura të njohura, Metoda e Vincenty Llogaritja e distancave midis koordinatave në Excel nuk është përkthyer në një funksion të vetëm të fletëllogaritjes dhe ka shumë të ngjarë të mos jetë e lehtë, të paktën.
Për shkak se ai mbështetet në llogaritjet përsëritëse për t'u marrë me pikat që janë shumë afër të qenit në anët e kundërta të botës, zbatimi i tij edhe si një seri formulash të fletëllogaritjes Excel është një detyrë e frikshme.
Metoda 2: Llogaritni distancat midis koordinatave në Excel (Puna me kënde)
Por përpara se të përdorni veçorinë, duhet të merren parasysh disa hapa paraprak. Më e rëndësishmja, Excel dhe VB punojnë me kënde të shprehura në radianë, jo si vlera dhjetore të këndeve, as nga përfaqësimi i tyre fillestar "anglisht i thjeshtë".
Konsideroni këtë situatë:
Ju keni një gjerësi gjeografike të përfaqësuar si 10° 27′ 36″ jug (10 gradë, 27 minuta 36 sekonda në jug)
Ju duhet ta konvertoni atë në radianë, dhe nuk ka asnjë mënyrë të drejtpërdrejtë për ta bërë këtë, përpara se ta konvertojmë atë në radian, duhet të konvertohet në një paraqitje dhjetore. Duhet ta shohim si: 10.46 që është dhjetore ekuivalente me 10° 27′ 36″ dhe duhet të kemi parasysh nëse është gjerësi gjeografike veriore apo jugore dhe gjerësitë jugore trajtohen si numra negativë.
Për fat të mirë, Microsoft ofron disa funksione të dobishme për konvertimin e shënimeve standarde Angular në ekuivalentin e tyre dhjetor dhe anasjelltas, në këtë faqe: Karakteristikat e Microsoft
Këto rutina janë të përfshira në seksionin e kodit dhe njëra prej tyre ka një ndryshim të bërë për të lejuar bërjen e një hyrjeje të rregullt këndi si p.sh.
- 10~ 27′ 36″ jug në vend të 10° 27′ 36″ jug
Sepse ~ është drejtpërdrejt i aksesueshëm nga tastiera, ndërsa ° jo.
Metoda 3: llogaritni distancat midis koordinatave në Excel (Konvertimi në Radian)
Pas konvertimit të shënimit standard në një vlerë dhjetore, ne ende duhet ta konvertojmë atë në radianë dhe të merremi me shenjën e rezultatit radian.
Rutinat dhe formulat këtu i konsiderojnë gjerësitë negative si gjerësi gjeografike jugore dhe gjatësitë negative si gjatësi gjeografike perëndimore. Ndërsa kjo mund të duket e padrejtë për ne që jetojmë në hemisferën perëndimore, çfarë mund të them përveçse të merremi me të?
Një vlerë e shkallës dhjetore mund të konvertohet në radianë në disa mënyra në Excel, dhe ky proces përdor një funksion të thjeshtë që përfshihet gjithashtu në kodin më poshtë.
Formula bazë është si më poshtë:
- Radianët = këndAsDecimal x (Pi / 180)
- ku Pi është 3.14159265358979
Metoda 4: llogaritni distancat midis koordinatave në Excel (zgjidhja përfundimtare)
- hap 1: Kopjoni të gjithë kodin e mëposhtëm dhe ngjisni në një modul të rregullt kodi në librin tuaj të punës. Udhëzimet për vendosjen e kodit në një modul të rregullt janë këtu: Kopjoni kodin Excel VBA në një modul të rregullt
- hap 2: Konfiguro fletën tuaj të punës për të kaluar gjerësitë dhe gjatësitë e pikave të fillimit dhe të fundit si hyrje standarde
- hap 3: pastaj vendosni një formulë për t'i kaluar ato në funksionin distVincenty().
Jepen dy pika me këto koordinata:
Pika 1:
- Gjerësia gjeografike: 37° 57′ 3.7203″ J
- Gjatësia gjeografike: 144° 25′ 29.5244″ E
Pika 2:
- Gjerësia gjeografike: 37° 39′ 10.1561″ J
- Gjatësia gjeografike: 143° 55′ 35.3839″ E
Formati i përgjithshëm i thirrjes së funksionit është:
=distVincenty(Pt1_LatAsDecimal, Pt1_LongAsDecimal, Pt2_LatAsDecimal, Pt2_LongAsDecimal)
Një formulë e papërpunuar do të dukej kështu [Vini re thonjëzat e dyfishta pas hyrjeve të sekondave]. Funksioni SignIt(), i dhënë si pjesë e kodit, konverton hyrjen standarde Angular në një vlerë dhjetore të nënshkruar.
=distVincenty(SignIt(«37° 57′ 3.7203″» S «), SignIt(«144° 25′ 29.5244″» E»), SignIt(«37° 39′ 10.1561″» S«), Shenja 143′ 55" E»))
Ju mund të përdorni simbolin ~ në vend të simbolit ° nëse është më e lehtë për ju:
=distVincenty(SignIt(«37~ 57′ 3.7203″» S«), SignIt(«144~ 25′ 29.5244″» E»), SignIt(«37~ 39′ 10.1561″» S«), Shenja 143~t 55′ 35.3839" E»))
Nëse koordinatat e pikës 1 janë në B2 dhe C2 dhe koordinatat e pikës 2 janë në B3 dhe C3, atëherë mund të futet si
= distVincenty(SignIt(B2), SignIt(C2), SignIt(B3), SignIt(C3))
Rezultati i 2 pikave të mostrës së përdorur më sipër duhet të jetë 54972,271, dhe ky rezultat është në metra.
Metoda 5: Llogaritni distancat midis koordinatave në Excel (Problemet e hasura)
Kodi fillestar që filluam të punojmë me gabimet e gjeneruara të "formulë shumë komplekse» në dy deklarata. Këto deklarata fillimisht u ndanë në dy pjesë dhe më pas ato dy llogaritje të veçanta u "ata u bashkuan përsëri» në një formulë për të marrë rezultatin përfundimtar pa gabimin e «formulë shumë komplekse".
Gjatë përgatitjes së këtij dokumenti, paketa u testua në Excel 2010 64-bit dhe filloi të kthehej #VALE! gabime për të gjitha vlerat hyrëse.
Hetimi konstatoi se një pjesë e formulës tashmë është ndarë për të përcaktuar vlerën deltaSigma Po krijonte një gabim tejmbushjeje. Ky gabim nuk ndodhi në versionin 32-bit të Excel 2010, as në Excel 2003 (një aplikacion 32-bit).
Linja fyese e kodit u nda edhe një herë në copa më të vogla që përfundimisht u bashkuan përsëri në një proces matematikisht të saktë që rezultoi në përcaktimin e vlerave të duhura pa iu drejtuar ndonjë ndryshimi në algoritmin origjinal.
Këto seksione janë shënuar në komentet e kodit për funksionin distVincenty() më poshtë.
Kodi i gjerësisë gjeografike për të llogaritur distancat midis koordinatave në Excel
Tani, më në fund, kodi:
'********************************************
Kosto private PI = 3.14159265358979
Private Const EPSILON As Double _
= 0.000000000001
'==========================================
Funksioni publik distVincenty(ByVal _
lat1 As Double, ByVal lon1 As Double, _
ByVal lat2 As Double, _
ByVal lon2 As Double) Si Double
'HYRJET: Gjerësia dhe gjatësia e
'pikat fillestare dhe të destinacionit
' në format dhjetor.
'REZULTATE: Distanca midis
Dy pikë në metra.
'
'==============================
Llogaritni distancën gjeodezike (në m)
'ndërmjet dy pikave të përcaktuara nga
"gjerësia/gjatësia gjeografike (në numerike
'Shkallët [dhjetore])
duke përdorur formulën e kundërt të Vincenty
' për elipsoidet
'=================================
' Kodi është bartur nga lost_species
' nga www.aliencoffee.co.uk në VBA
' nga javascript botuar në:
' https://www.movable-type.co.uk/scripts
' /latlong-vincenty.html
' * nga: formula e kundërt Vincenty -
'T Vincenty, "Direkt dhe i kundërt
'Zgjidhjet e gjeodezisë në
' * Elipsoid me aplikim
'e ekuacioneve të mbivendosur', Rishikimi i Anketës,
Vëllimi XXII nr. 176, 1975
' * https://www.ngs.noaa.gov/
' PUBS_LIB/inverse.pdf
'Referencë shtesë:
' https://en.wikipedia.org/wiki/
'Vincenty%27s_formulae
'==============================
' E drejta e autorit lost_species 2008 LGPL
' https://www.fsf.org/licensing/
'licens/lgpl.html
'==============================
'Modifikimet e kodit për të parandaluar
Gabimet "Formula Too Complex" në
'Excel (2010) Zbatimi i VBA
'siguruar nga Jerry Latham,
'Microsoft MVP Excel, 2005-2011
'23 korrik 2011
'==============================
Dim low_a As Double
Dim low_b Si Double
Dim f Si Dyfish
Dim L As Double
Dim U1 As Double
Dim U2 As Double
Dim sinU1 Si Dyfish
Dim sinU2 Si Dyfish
Dim cosU1 As Double
Dim cosU2 As Double
Dim lambda As Double
Dim lambdaP As Double
Dim iterLimit si numër i plotë
Dim sinLambda As Double
Dim cosLambda As Double
Dim sinSigma As Double
Dim cosSigma As Double
Dim sigma As Double
Dim sinAlpha si dyfish
Dim cosSqAlpha As Double
Dim cos2SigmaM As Double
Dim C Si Dyfish
Dim uSq As Double
Dim upper_A Si Double
Dim upper_B Si Double
Dim deltaSigma As Double
Rezultati final i Dim s As Double,
'do të kthehen të rrumbullakosura në
3 shifra dhjetore (mm).
'shtuar nga JLatham për t'u ndarë
Formula 'shumë komplekse'
'në copa për të llogaritur siç duhet
'ato formula siç përmenden më poshtë
'dhe për të parandaluar gabimet e tejmbushjes kur
'duke përdorur Excel 2010 x64 në
' Dritaret 7 sisteme x64
Dim P1 As Double ' përdoret për llogaritjen
'një pjesë e një formule komplekse
Dim P2 As Double ' përdoret për llogaritjen
'një pjesë e një formule komplekse
Dim P3 As Double ' përdoret për llogaritjen
'një pjesë e një formule komplekse
'Shih https://en.wikipedia.org/wiki
' /Sistemi_Gjeodez_Botëror
'për informacion mbi elipsoid të ndryshëm
Parametrat për standarde të tjera.
'low_a dhe low_b në metra
' === GRS-80 ===
'low_a = 6378137
'e ulët_b = 6356752.314245
' f = 1 / 298.257223563
'
' === Airy 1830 === Raportuar më së miri
Saktësia për Anglinë
' dhe Evropën Veriore.
'low_a = 6377563.396
'e ulët_b = 6356256.910
' f = 1 / 299.3249646
'
' ===International 1924 ===
'low_a = 6378388
'e ulët_b = 6356911.946
' f = 1 / 297
'
'===Clarke Model 1880===
'low_a = 6378249.145
'e ulët_b = 6356514.86955
' f = 1 / 293.465
'
' === GRS-67 ===
'low_a = 6378160
'e ulët_b = 6356774.719
' f = 1 / 298.247167
'== Parametrat elipsoid WGS-84 ===
ulët_a = 6378137 ' +/- 2m
low_b = 6356752.3142
f = 1/298.257223563
'==========================
L = toRad (lon2 – lon1)
U1 = Atn((1 – f) * Tan(toRad(lat1)))
U2 = Atn((1 – f) * Tan(toRad(lat2)))
sinU1 = Sin(U1)
cosU1 = Cos(U1)
sinU2 = Sin(U2)
cosU2 = Cos(U2)
lambda = L
lambdaP = 2 * PI
iterLimit = 100 ' mund të vendoset
' deri në 20 nëse dëshironi.
Ndërsa (Abs(lambda – lambdaP) > _
EPSILON) Dhe (iterLimit > 0)
iterLimit = iterLimit – 1
sinLambda = Mëkat (lambda)
cosLambda = Cos(lambda)
sinSigma = Sqr(((cosU2 * sinLambda) _
^2) + ((cosU1 * sinU2 – sinU1 _
*cosU2 *cosLambda) ^2))
Nëse sinSigma = 0 Atëherë
distVincenty = 0 'pika të bashkëincidentit
Funksioni i daljes
Nëse End
cosSigma = sinU1 * sinU2 + cosU1 _
*cosU2 *cosLambda
sigma = Atan2 (cosSigma, sinSigma)
sinAlfa = cosU1 * cosU2 * _
sinLambda / sinSigma
cosSqAlpha = 1 – sinAlpha * sinAlpha
Nëse cosSqAlpha = 0 Pastaj 'kontrolloni për
'një pjesëtim me zero
cos2SigmaM = 0 '2 pikë në ekuator
Tjetër
cos2SigmaM = cosSigma – 2 _
* sinU1 * sinU2 / cosSqAlpha
Nëse End
C = f / 16 * cosSqAlpha * (4 + f _
* (4 – 3 * cosSqAlpha))
lambdaP = lambda
'Llogaritja origjinale është
'Shumë komplekse' për Excel VBA
'për t'u marrë me
'kështu që ndahet në segmente
'për të llogaritur pa atë çështje
'zbatimi origjinal
' për të llogaritur lambda
'lambda = L + (1 – C) * f * sinAlfa * _
(sigma + C * sinSigma * (cos2SigmaM
' + C * cosSigma * (-1 + 2
' * (cos2SigmaM ^ 2))))
'llogaritni pjesët
P1 = -1 + 2 * (cos2SigmaM^2)
P2 = (sigma + C * sinSigma * _
(cos2SigmaM + C * cosSigma * P1))
'përfundoni llogaritjen
lambda = L + (1 – C) * f _
*pa Alfa*P2
drejtohem
Nëse iterLimit > 1 Pastaj
MsgBox_
"kufiri i përsëritjes është arritur," _
& "Diçka nuk funksionoi."
Funksioni i daljes
Nëse End
uSq = cosSqAlpha * (i ulët_a ^ 2 _
–low_b^2)/(i ulët_b^2)
'Llogaritja origjinale është
'Shumë komplekse' për Excel VBA
'për t'u marrë me
'kështu që ndahet në segmente për të
'llogaritni pa atë çështje
'zbatimi origjinal për të
'llogarit upper_A
'upper_A = 1 + uSq / 16384 *
' (4096 + uSq * (-768 + uSq *
' (320 – 175 * uSq)))
'llogaritni një pjesë të ekuacionit
P1 = (4096 + uSq * (-768 _
+ uSq * (320 – 175 * uSq)))
'përfundoni llogaritjen
sipërme_A = 1 + uSq / 16384 * P1
'mjaft e çuditshme, upper_B llogarit
'pa asnjë problem - JLatham
sipërme_B = uSq / 1024 * (256 + uSq _
* (-128 + uSq * (74 – 47 * uSq)))
'Llogaritja origjinale është
'Shumë komplekse' për Excel VBA
'për t'u marrë me
'kështu që ndahet në segmente për të
'llogaritni pa atë çështje
'zbatimi origjinal për të
' llogarit deltaSigma
'deltaSigma = sipërme_B * sinSigma *
'(cos2SigmaM + upper_B / 4 *
' (cosSigma * (-1 + 2
'*cos2SigmaM^2)_
–sipër_B /6 *cos2SigmaM*
'(-3 + 4 * sinSigma ^ 2) *
' (-3 + 4 *cos2SigmaM ^ 2)))
'llogaritni pjesët e
Formula deltaSigma
'ndahet në 3 pjesë për të parandaluar
'gabim i tejmbushjes që mund të ndodhë në
Versioni 2010-bit i Excel 64.
P1 = (-3 + 4 * sinSigma ^ 2) * _
(-3 + 4 * cos2SigmaM^2)
P2 = sipërme_B * sinSigma
P3 = (cos2SigmaM + sipër_B / 4 * _
(cosSigma * (-1 + 2 _
*cos2SigmaM^2) – _
sipërme_B / 6 * cos2SigmaM * P1))
Llogaritja e plotë e deltaSigma
deltaSigma = P2 * P3
'llogaritni distancën
s = ulët_b * sipërme_A * _
(sigma – deltaSigma)
Distanca e rrumbullakët në milimetra
distVincenty = Raund(a, 3)
Funksioni Fundi
'==========================================
Funksioni SignIt (Degree_Dec si varg) _
Si Dyfish
'Input: një përfaqësim i vargut të
' një lat ose gjatë në
' Formati S/N 10° 27' 36″
'ose 10~ 27' 36" Lindore/Perëndimore
'OUTPUT: vlerë dhjetore e nënshkruar
'gati të konvertohet në radianë
'
Zbeh vlerën dhjetore si dyfish
Dim tempString si varg
tempString = UCase (Trim(gradë_dhjetor))
Vlera dhjetore = _
Convert_Decimal (tempString)
Nëse Right (tempString, 1) = «S» _
Ose Right (tempString, 1) = "W" Pastaj
Vlera dhjetore = Vlera dhjetore * -1
Nëse End
SignIt = Vlera dhjetore
Funksioni Fundi
'==========================================
Funksioni Convert_Degree (Decimal_Degree) _
Si Variant
'burimi: https://support.microsoft.com/
' kb/213449
'
'konvertohet në shkallë dhjetore
' përfaqësim në deg min sekondë
"si 10.46 kthen 10° 27" 36"
'
Dim gradë si variant
Minutat e zbehta si variant
Dim sekonda si variant
Me Aplikim
'Cakto shkallën në numër të plotë të
'Argumenti kaloi
gradë = Int(Decimal_Deg)
'Vendosni minutat në 60 herë
'Numri në të djathtë
'të dhjetorit për
' variabli Decimal_Deg
minuta = (Decimal_Deg – _
gradë) * 60
'Vendosni sekondat në 60 herë
'Numri në të djathtë të
'dhjetëshe për ndryshoren Minute
sekonda = Format(((minuta – _
Int(minuta)) * 60), «0»)
'Kthon rezultatin e gradës
' konvertim
'(për shembull, 10.46 = 10° 27' 36")
Convert_Degree = » » & grade _
& «°» & Int(minuta) & «'» _
& sekonda + Chr(34)
Mbaro me
Funksioni Fundi
'==========================================
Funksioni Convert_Decimal_
(Degree_Deg As String) As Double
'burimi: https://support.microsoft.com/
' kb/213449
'Deklaroni variablat si të jenë
'Pikë lundruese me saktësi të dyfishtë.
'Konverton hyrjen këndore të tekstit në
' dhjetore ekuivalente, si:
'10° 27' 36" kthen 10.46
'Alternativa për ° është e lejuar:
' Përdorni ~ në vend të kësaj, si:
'10~ 27' 36" gjithashtu kthen 10.46
Dim gradë si dyfish
Minutat e zbehta si të dyfishta
Zbehja e sekondave si dyfish
'
'Modifikimi nga JLatham
'lejo përdoruesin të përdorë ~
simboli ' në vend të ° për të treguar gradë
'pasi ~ është në dispozicion nga
Duhet të futet ' tastiera dhe °
'përmes [Alt] [0] [1] [7] [6]
' në bllokun e numrave.
Diplomë_Deg = Zëvendëso(Degrade_Deg, _
«~», «°»)
' Cakto shkallën në vlerë më parë
' «°» e Argumentit të kaluar.
gradë = Val(majtas(gradë_gradë, _
InStr(1, Grade_Deg, «°») – 1))
' Cakto minutat në vlerën ndërmjet
"°" dhe """
' të vargut të tekstit për variablin
' Grade_Deg pjesëtuar me
' 60. Funksioni Val konverton
' varg teksti në një numër.
minuta = Val(mesi(gradë_gradë, _
InStr(1, Grade_Deg, «°») + 2, _
InStr(1, Grade_Deg, «'») – _
InStr(1, Grade_Deg, «°») – 2)) / 60
'Vendosni sekondat në numrin në
"e drejta e """ që është
'konvertuar në një vlerë dhe më pas
pjesëtuar me 3600.
sekonda = Val(mesi(gradë_gradë, _
InStr(1, Grade_Deg, «'») + _
2, Len (gradë_gradë) – _
InStr(1, Grade_Deg, «'») – 2)) _
/ 3600
Convert_Decimal = gradë _
+ minuta + sekonda
Funksioni Fundi
'==========================================
Funksioni Privat nëRad(ByVal _
grade As Double) As Double
toRad = gradë * (PI / 180)
Funksioni Fundi
'==========================================
Funksioni Privat Atan2(_
ByVal X si dyfish, _
ByVal Y As Double) As Double
'kodi i mbiquajtur nga:
' https://en.wikibooks.org/wiki/
' Programimi: Visual_Basic_Classic/
'Aritmetikë_e thjeshtë
' #Funksionet_Trigonometrike
'Nëse e ripërdorni këtë kujdes:
'x dhe y janë kthyer nga
'përdorim tipik.
Nëse Y > 0 Atëherë
Nëse X >= Y Atëherë
Atan2 = Atn(Y / X)
ElseNëse X <= -Y Atëherë
Atan2 = Atn(Y / X) + PI
Tjetër
Atan2 = PI / 2 – Atn(X / Y)
Nëse End
Tjetër
Nëse X >= -Y Atëherë
Atan2 = Atn(Y / X)
ElseNëse X <= Y Atëherë
Atan2 = Atn(Y / X) – PI
Tjetër
Atan2 = -Atn(X / Y) - PI / 2
Nëse End
Nëse End
Funksioni Fundi
'==========================================
Si të llogaritni distancat midis koordinatave në Excel me formulën e distancës
Tani, le të shohim se si të llogarisim distancat midis koordinatave në Excel me formulën e distancës:
Formula e përgjithshme është si më poshtë = RRËNJA KATRORE ((x2 – x1)^2 + (y2 – y1)^2)
Përmbledhje
Për të llogaritur gjatësinë e një linje 2D duke pasur parasysh koordinatat e dy pikave në vijë, mund të përdorni formulën e distancës, të përshtatur për sintaksën e formulës Excel. Në shembullin e treguar, formula në G5, e kopjuar poshtë, është:
=SQRT((D5 – B5)^2 + (E5 – C5)^2)
ku koordinatat e dy pikave janë dhënë në kolonat B deri në E.
Shpjegim
Gjatësia e një rreshti mund të llogaritet me formulën e distancës, e cila duket si kjo:
Distanca është rrënja katrore e ndryshimit në x në katror plus ndryshimin në y në katror, ku dy pika janë dhënë në formën (x 1, y 1) dhe (x 2, y 2). Formula e distancës është një shembull i zbatimit të Teoremës së Pitagorës, ku ndryshimi në x dhe ndryshimi në y korrespondojnë me dy brinjët e një trekëndëshi kënddrejtë, dhe hipotenuza është distanca që llogaritet.
Në Excel, formula e distancës mund të shkruhet me operatorin eksponent (^) dhe funksioni SQRT është si më poshtë:
- =SQRT((D5 – B5)^2 + (E5 – C5)^2)
Pas renditjes së operacioneve të Excel-it, ndryshimi në x dhe ndryshimi në y llogariten, më pas vendosen në katror dhe dy rezultatet shtohen dhe dërgohen në funksionin SQRT, i cili kthen rrënjën katrore të shumës si rezultat përfundimtar.
=SQRT((D5 – B5)^2 + (E5 – C5)^2)
=SQRT((6)^2 + (8)^2)
=SQRT(36+64)
=SQRT(100)
= 10
Funksioni POWER mund të përdoret gjithashtu në vend të operatorit eksponent (^) si kjo:
= SQRT(POWER(D5 – B5, 2) + POWER(E5 – C5, 2))
me të njëjtin rezultat.
Metodat për llogaritjen e distancave midis koordinatave në Excel (distanca, konvertimi i shkallëve dhe adresat e gjeokodit)
Nëse keni një listë të gjatë të koordinatave gjeografike për të punuar, një spreadsheet i Microsoft Excel me siguri do të jetë i dobishëm. Ekzistojnë tre mjete bazë të Excel që mund të funksionojnë për ju, pavarësisht se si dëshironi të manipuloni koordinatat gjeografike.
Ju do të duhet të dini se si të llogaritni distancat midis koordinatave në Excel, si të konvertoni të dhënat e gjerësisë dhe gjatësisë gjeografike në gradë dhjetore dhe së fundi, si të gjeokodoni gjerësitë dhe gjatësitë gjeografike.
Metoda 1: Llogaritni distancat midis koordinatave në Excel
Në një shembull se si të llogarisim distancën midis dy koordinatave në Excel, do të shikojmë të matim distancën e rrethit të madh. Do të vërejmë se gjerësia dhe gjatësia gjeografike shënohen në gradë, minuta dhe sekonda.

Si të llogarisni distancat midis koordinatave në Excel duke konvertuar gjerësinë dhe gjatësinë në gradë dhjetore
Çdo gjë, edhe diçka aq e ndërlikuar si gradë, minuta dhe sekonda, mund të konvertohet në dhjetore. Pjesa e gradëve mbetet e njëjtë, por minutat dhe sekondat duhet të konvertohen në përqindjen e tyre të një shkalle dhe të kombinohen.
Ka 60 minuta në një shkallë dhe 60 sekonda në një minutë (që do të thotë 3600 sekonda në një shkallë). Prandaj, minutat pjesëtohen me 60 dhe sekondat me 3.600.
Formula e përgjithshme:
- Shkallët totale (në formë dhjetore) = Gradë + [Minuta/60] + [Sekonda/3600]

…Për atë distancë
Tani që keni vlerat e gjerësisë dhe gjatësisë në dhjetore, thjesht përballeni me ekuacionin për milje detare midis Timbuktu dhe Casablanca, të dhënë më poshtë.
Milje detare = ACOS [(sin(Lat_place_1*PI()/180)*sin(Lat_place_2*PI()/180)+ cos(Lat_place_1*PI()/180)*cos(Lat_place_2*PI()/180)* cos(Lon_place_2*PI()/180-Lon_place_1*PI()/180)) ] *3443.8985
Ky numër tre mijë, në fund, është rrezja e Tokës, në Milje Detare. Edhe nëse do ta zëvendësonit atë me rrezen e një sfere, duke supozuar se Toka është sferike, në 3437,7468 NM, ajo nuk do të jetë afër distancës së vërtetë dhe të saktë.
Metoda 2: Llogaritni distancat midis koordinatave në Excel (gjerësia dhe gjatësia e gjeokodit)
Gjeokodimi është konvertimi i adresave të rrugëve në të dhëna të gjerësisë dhe gjatësisë gjeografike të hartueshme. Tani, ekzistojnë dy mënyra për të gjeokoduar gjerësinë dhe gjatësinë gjeografike nga një spreadsheet Excel: rrugën e vështirë y mënyra e lehtë.
Ne fillimisht do të mbulojmë rrugën e vështirë, e cila është ajo që ju nevojitet nëse dëshironi që koordinatat të jetojnë në dokumentin tuaj Excel. Ju duhet të shkruani sekuencën e komandat Visual Basic (VBA) për të bërë një telefonatë në një gjeokodues të jashtëm ose për të kërkuar kodin diku tjetër. Ka disa API të gjeokoduesve dhe disa gjeokodues janë më të shpejtë se të tjerët.
API-ja e gjeokodimit Google Maps është një opsion i zakonshëm dhe ky është API që do ta quajmë në opsionin e lehtë. Megjithatë, ju gjithashtu mund të punoni direkt brenda Excel. Të pajisur me kodin që keni shkruar ose zbuluar, këtu janë hapat për të zbatuar gjeokodimin në Excel.
Mënyra e vështirë
- Hapi 1:kërkoni për skedën zhvillues në versionin tuaj të Excel.
- Hapi 2:kërkoni për skedën «Visual Basic«. Kjo hap dritaren e zhvillimit.
- Hapi 3:Fut —> Moduli. Moduli i ri do të ruajë funksionin tuaj.
- Hapi 4: Këtu kopjoni dhe ngjisni kodin tuaj.
- Hapi 5:Ne duhet të shtojmë referenca tani. Pra, Mjetet —> Referencat. Sigurohuni që të kontrolloni Microsoft XML v6.0. KLIKONI PRANO.
- Hapi 6:shtyp CTRL / VKM +S. Ruaj si lloj —> Shtesa Excel. Tani mund të emërtoni funksionin tuaj. Zgjatja duhet të jetë xlam. Është koha për të mbyllur të gjithë skedarët Excel.
- Hapi 7:Hapni një skedar të ri duke ndjekur rrugën e mëposhtme: Skedari —> Opsionet —> Shtojcat. Në kutinë Menaxho, zgjidhni Shtesat Excel.
- Hapi 8:shtyp Ir. Zgjidhni funksionin në dritaren që shfaqet duke kontrolluar kutinë. Shtypni
- Hapi 9:Tani mund të përdorni funksionin e ri që keni krijuar, si çdo funksion tjetër.
SHËNIM: Pasi të keni mbaruar marrjen e vlerave, kopjoni dhe ngjitini ato diku tjetër, jashtë fletës me llogaritjet. Më pas i hiqni thirrjet e funksionit sepse përndryshe kur ta hapni përsëri këtë skedar, API-ja e Google do të fillojë të futet përsëri në ping. Kjo do të konsumojë disa minuta përpara se të hapet skedari. Për të optimizuar përdorimin e burimeve të Google, bëni një pushim prej 10 sekondash midis adresave.
Janë shumë hapa dhe supozon se keni gjetur një kod për të provuar. Më pas, ne do të shikojmë mënyrën më të lehtë për të gjeokoduar të dhënat tuaja në Excel. Është i shpejtë dhe i besueshëm, por nuk do të importojë koordinata në skedarin tuaj Excel. Nga ana tjetër, mjeti gjeokodues i Excel-it është i thjeshtë për t'u kopjuar dhe ngjitur dhe ju jep një hartë interaktive.
Mënyra e lehtë (llogaritni distancat midis koordinatave në Excel kur krijoni një hartë)
Ka disa mënyra për të krijuar harta me të dhëna Excel. Ndoshta më e lehtë është thjesht të kopjoni dhe ngjitni të dhënat tuaja të fletëllogaritjes në mjetin tonë të hartës. Duke vepruar kështu, dokumenti juaj Excel në një hartë të bukur interaktive.
- hap 1: Për të bërë hartën tuaj bazuar në koordinatat e gjerësisë dhe gjatësisë, ndani koordinatat në kolonat e tyre brenda tabelës suaj.



- hap 2: Më pas, zgjidhni dhe kopjoni rreshtat dhe kolonat e tabelës suaj (komandë Ctrl+C ose Cmd+C në mushama) dhe ngjitni (Ctrl+V ose Cmd+V në Mac) në të dhënat tuaja dhe keni mbaruar!
Ju gjithashtu mund të jeni të interesuar të lexoni rreth: Si të përdorni funksionin QUARTILE në Excel - Udhëzues i plotë
Përfundim
Siç mund ta shihni, këto janë metodat që mund të përdorni për të llogaritur distancat midis koordinatave në Excel. Pavarësisht nëse dëshironi të krijoni një hartë të gjerësisë dhe gjatësisë ose të krijoni udhëzuesin tuaj virtual të dasmës për mysafirët tuaj, këto procese ofrojnë një mënyrë falas dhe të lehtë për të krijuar harta të bukura në internet që janë gati për t'u ruajtur dhe shpërndarë. Shpresojmë t'ju kemi ndihmuar me këtë informacion.
Emri im është Javier Chirinos dhe jam i apasionuar pas teknologjisë. Për aq kohë sa mbaj mend, isha e dhënë pas kompjuterëve dhe videolojërave dhe ky hobi përfundoi në një punë.
Unë kam publikuar për teknologjinë dhe pajisjet në internet për më shumë se 15 vjet, veçanërisht në mundobytes.com
Unë jam gjithashtu një ekspert në komunikimin dhe marketingun online dhe kam njohuri për zhvillimin e WordPress.