Cuprins
Articolul vă va arăta cum să calculați distanța între două adrese în Excel. Microsoft Excel are această caracteristică specială și o formulă foarte bună pentru găsirea distanței între două locuri din lume. Dacă aveți Coordonate GPS de două locuri, puteți cu ușurință determinați distanța dintre aceste locuri în orice unitate doriți.
Descărcați caietul de practică
Calcularea distanței dintre două adrese.xlsm
3 moduri de a calcula distanța dintre două adrese în Excel
În setul nostru de date, avem Latitudine și Longitudine pentru Ohio și Alaska Vom măsura distanța dintre ele.
The Latitudini pentru Ohio și Alaska sunt 40.4173 Nord și 64.2008 Nord De asemenea, se poate observa că Longitudini pentru Ohio și Alaska sunt 82.9071 Vest și 149.4937 Vest respectiv.
1. Utilizarea formulei Haversine pentru a calcula distanța dintre două adrese
Dacă ești bun la matematică, folosind Formula Haversine Deși vă va oferi un rezultat aproximativ, acesta este unul destul de bun.
În primul rând, trebuie să știm care este formula de bază a lungimii arcului Și folosind această formulă, o comparăm cu distanța dintre două locuri de pe Pământ. Formula este prezentată mai jos.
S = rθ
S = Distanța dintre două adrese
r = raza Pământului
θ = Unghiul introdus în centrul Pământului de cele două adrese
Dar dacă aveți Coordonate GPS din două locuri, trebuie să determinați din Formula Haversine Uită-te la Formula Haversine prezentate mai jos.
Dacă comparați acest lucru cu formula lungimii arcului , veți obține ca în imaginea următoare.
Haideți să vă prezentăm parametrii din Formula Haversine .
φ 1 = Latitudinea primului loc
φ 2 = Latitudinea celui de-al doilea loc
ℽ 1 = longitudinea primului loc
ℽ 2 = Latitudinea celui de-al doilea loc
Acum, vă voi arăta cum să aplicați această formulă în Excel, pas cu pas.
Pași:
- Mai întâi, creați o celulă pentru a stoca valoarea distanței și introduceți următoarea formulă în celulă C8 .
=2*6400*ASIN(SQRT((SIN(C6-C5)/2)^2+COS(C5)*COS(C6)*(SIN(D6-D5)/2)^2))
Formula utilizează ASIN , SQRT , SIN și COS funcții Este destul de simplu dacă te uiți la Formula Haversine Măsurăm distanța în kilometri , deci punem raza Pământului în kilometri care este 6400 km . ASIN se referă la Sinus invers sau ArcSine Dacă comparăm unghiurile de parametru ale Formula Haversine cu formula noastră Excel, obținem,
1 = Latitudinea statului Ohio (C5)
2 = Latitudinea Alaskăi (C6)
ℽ 1 = longitudinea Ohio (D5)
ℽ 2 = Latitudinea Alaskăi (D6)
- După aceea, apăsați butonul ENTER pentru a vedea distanța dintre Ohio și Alaska în Kilometri .
- Ulterior, dacă doriți să măsoară distanța în mile , utilizați următoarea formulă în celula C8 .
=2*3959*ASIN(SQRT((SIN(C6-C5)/2)^2+COS(C5)*COS(C6)*(SIN(D6-D5)/2)^2))
Aici, am folosit aceeași formulă Excel pe care am folosit-o pentru a găsi distanța în mile Din acest motiv, luăm raza Pământului în mile care este 3959 .
Astfel, se poate calcula distanța între două adrese de pământ în Excel prin aplicarea funcției Formula Haversine .
Citește mai mult: Cum se calculează distanța dintre două coordonate în Excel (2 metode)
2. Aplicarea funcțiilor Excel CONCATENATE și SUBSTITUTE pentru a calcula distanța dintre două adrese
Puteți crea un Harta Google link pentru a găsi distanța între două adrese folosind Excel CONCATENATE și SUBSTITUTE Funcții Să trecem prin procesul de mai jos.
Pași:
- Mai întâi, introduceți următoarea formulă în C8 .
=CONCATENATE("//maps.google.co.uk/maps?f=d&source=s_d&saddr=",
SUBSTITUTE(B5," ", "+"),"&daddr=",SUBSTITUTE(B6," ", "+"))
Această formulă va crea un Harta Google link despre cum puteți călători de la Ohio la Alaska . CONCATENATE va adăuga funcția adrese din link și SUBSTITUTE va plasa numele fișierului adrese .
- Apoi, apăsați butonul ENTER și veți vedea butonul Harta Google legătură în C8 .
- După aceea, folosiți acest lucru link în bara de căutare pe internet și veți obține distanța informații despre aceste două adrese .
În cele din urmă, puteți calcula distanța între două adrese ale pământului în Excel prin aplicarea CONCATENATE și SUBSTITUTE funcții.
Citește mai mult: Cum se calculează distanța dintre două orașe în Excel
3. Utilizarea VBA pentru a calcula distanța dintre două adrese în Excel
Un alt mod de a calcula distanța între două adrese ar putea fi prin realizarea unui API ( Interfața de programare a aplicațiilor ) și utilizarea acesteia pentru a crea un link Funcție definită de utilizator de VBA . puteți face un API legătură în Bing gratuit. Pentru a crea un Harta Bing Cheia API proprie, click aici .
Pași:
- În primul rând, mergeți la Dezvoltator >> Visual Basic .
- După aceea, selectați Introduceți >> Modul pentru a deschide fereastra Modul VBA .
- Ulterior, introduceți următorul cod în fișierul Modul VBA Creăm un Funcție definită de utilizator pentru a calcula distanța în mile .
Option Explicit Public Function DistanceInMiles(First_Location As String, _ Final_Location As String, Target_Value As String) Dim Initial_Point As String, Ending_Point As String, _ Distance_Unit As String, Setup_HTTP As Object, Output_Url As String Initial_Point = "//dev.virtualarth.net/REST/v1/Routes/DistanceMatrix?origins=" Ending_Point = "&destinations=" Distance_Unit ="&travelMode=driving&o=xml&key=" & Target_Value & "&distanceUnit=mi" Set Setup_HTTP = CreateObject("MSXML2.ServerXMLHTTP") Output_Url = Initial_Point & First_Location & Ending_Point & Final_Location & Distance_Unit Setup_HTTP.Open "GET", Output_Url, False Setup_HTTP.SetRequestHeader "User-Agent", "Mozilla/4.0 (compatibil; MSIE 6.0; Windows NT 5.0)"Setup_HTTP.Send ("") DistanceInMiles = Round(Round(Round(WorksheetFunction.FilterXML(Setup_HTTP.ResponseText, _ "//TravelDistance")), 3), 0) End Function
Cod Explicație
- În primul rând, am numit Funcția ca Distanțaîn mile De asemenea, am introdus 3 parametrii: First_Location ca șir, Final_Location ca șir și Target_Value ca String .
- După aceea, am declarat Punct_inițial , Punct_de_final , Unitate_de_distanță și Outout_Url ca Șir de caractere ; Configurare_HTTP ca Obiect .
- Mai târziu, am stabilit Punct_inițial ca punct de plecare al Url link , Punct_de_final ca Destinație și Unitate_de_distanță la Miles .
- După aceea, setăm parametrii necesari pentru a crea o relație între VBA și codul API
- În cele din urmă, am stabilit Funcție definită de utilizator .
- După aceea, urmând aceleași proceduri, am mai făcut încă un Funcție definită de utilizator pentru a afla distanța în kilometri .
Puteți vedea că, am schimbat doar Unitate_de_distanță la kilometri .
- Ulterior, în imaginea următoare, puteți vedea imaginea API cheie în celulă C8 .
- După aceea, introduceți următoarea formulă în celulă C8 .
=DistanceInMiles(E5,E6,C8)
- Apoi, apăsați butonul ENTER și veți vedea butonul distanța între Ohio și Alaska în mile .
- După aceea, utilizați următoarea formulă pentru a vedea valoarea distanța în kilometru .
=DistanceInKM(E5,E6,C8)
Astfel, se poate calcula distanța între două adrese folosind VBA și API cheie.
Citește mai mult: Cum se calculează distanța de conducere între două adrese în Excel
Lucruri de reținut
- Țineți cont de asta, trebuie să puneți aproximativ corect Coordonate GPS de aceste statele în date, deoarece utilizați internetul pentru a găsi distanța. Pe măsură ce statele sunt vest la Linia Meridian , ambele lor Longitudini va fi negativ.
Secțiunea practică
În această secțiune, vă voi oferi setul de date din acest articol, astfel încât să puteți exersa aceste metode pe cont propriu.
Concluzie
Este suficient să spunem că veți învăța metode foarte eficiente de a calcula distanța între două adrese în Excel după ce ați citit acest articol. Dacă aveți metode mai bune sau întrebări sau feedback cu privire la acest articol, vă rugăm să le împărtășiți în caseta de comentarii. Acest lucru mă va ajuta să-mi îmbogățesc articolele viitoare. Pentru mai multe întrebări, vă rugăm să vizitați site-ul nostru web ExcelWIKI.com .