Kuidas arvutada kahe linna vahelist kaugust Excelis

  • Jaga Seda
Hugh West

On mitmeid kasutusviise Excel . Lahe erifunktsioon ja valem Microsoft Excel võib määrata kahe konkreetse linna või asukoha vahelise eraldatuse planeedil. On väga oluline, et oleks võimalik arvutada vahemaa mis tahes kahe koha vahel kaardil. See võimaldab teil arvutada tegelikku vahemaad ja annab teile korraliku hinnangu, kui kaua teie reis kestab. Kuid exceliga saame seda hõlpsasti teha. Selles artiklis näitame mitmeid võimalusi kahe linna vahelise vahemaa arvutamiseks Excelis.

Lae alla praktiline töövihik

Võite alla laadida töövihiku ja nendega harjutada.

Kauguse arvutamine kahe linna vahel.xlsm

Andmekogumi sissejuhatus

Kahe linna vahelise kauguse arvutamiseks peame kõigepealt koostama andmekogumi. Oletame, et meil on kaks linna. Los Angeles mis on suurlinn osariigis California ja Pasco mis on linna Washington Nüüd peame leidma nende vahelise kauguse. Selleks peame teadma, et laiuskraad ja pikkuskraad mõlema linna kohta. Me saame lihtsalt Exceli abil leida mis tahes linna laius- ja pikkuskraadi. Vaatame, kuidas me seda teha saame.

SAMMUD:

  • Kõigepealt valime lahtri, kuhu paneme linnade nimed. Meie puhul valime lahtrid B5 ja B6 .
  • Teiseks, minge Andmed vahekaart lindilt.
  • Kolmandaks on Andmetüübid kategooria kliki Geograafia .

  • Seejärel valige laiuskraadi leidmiseks lahter, kuhu panite laiuskraadi, ja sisestage sinna valem.
=B5.Latitude

  • Press Sisesta et näha tulemust.

  • Samamoodi leiame lahtri laiuskraadi B6 .
  • Nüüd, et leida pikkuskraad, samuti laiuskraad, valige lahter ja sisestage sellesse lahtrisse järgmine valem.
=B5.Longitude

  • Vajuta Sisesta klaviatuuril.

  • Samamoodi saame B6 pikkuskraadi, järgides eelnevaid samme.
  • See ongi kõik, nüüd on meil mõlema linna laius- ja pikkuskraadid. Seega on meie andmestik nüüd valmis kasutamiseks.

5 erinevat meetodit kahe linna vahelise kauguse arvutamiseks Excelis

Kahe koha vahelise kauguse leidmine võimaldab meil seejärel määrata kahe elukoha vahelise vahemaa. Selle teabe abil saame hinnata, kui kaua meil kulub kodude vahel reisimiseks aega. Kahe linna vahelise kauguse leidmiseks kasutame ülaltoodud andmestikku, mille me just koostasime.

1. Rakenda Haversine'i valemit kahe linna vahelise kauguse arvutamiseks

Üks põhilisi võrrandeid ookeanide uurimiseks on Haversine valem , mida saab kasutada kahe koha vahelise kauguse arvutamiseks sfäärilisel tasapinnal, kui määrata nende laius- ja pikkuskraadid ning poolkera raadius. GPS seadmed on selle sisuliselt automatiseerinud. Järgime samme, et kasutada valemit kahe linna vahelise kauguse arvutamiseks.

SAMMUD:

  • Alustuseks valige lahter, kust soovite saada kaugust, seega valime lahtri C8 .
  • Seejärel pange Haversine valem sellesse valitud lahtrisse.
=3959*ASIN(SQRT((SIN(C6-C5)/2)^2+COS(C5)*COS(C6)*(SIN(D6-D5)/2)^2))

  • Lõpuks vajutage Sisesta klahvi, et näha tulemust.

  • Niisiis, kasutades valemit saame tulemuse 1367.581282 .

Loe lisaks: Kuidas arvutada kahe aadressi vahelist sõidu kaugust Excelis

2. Kahe linna vahelise kauguse arvutamine Exceli funktsioonide ACOS, SIN, COS ja RADIANS abil

Väärtuse pöördkosinus on see, mis on ACOS-funktsioon Tagastab nurga siinuse radiaanides, mis tagastatakse valemiga Exceli SIN-funktsioon Nurga košinus radiaanides tagastatakse valemiga COS-funktsioon Radiaanid muudetakse kraadideks, kasutades Exceli funktsioon RADIANS Me saame neid funktsioone kombineerida, et saada kahe linna vaheline kaugus. See on ka põhimõtteliselt automatiseeritud, kasutades GPS seadmed. Rakendame nende funktsioonide kombinatsiooni, et saada kahe linna vaheline kaugus, läbides sammud.

SAMMUD:

  • Kõigepealt valige lahter, kust soovite saada kaugust; antud juhul valime lahtri C8 .
  • Pärast seda sisestage funktsiooni valemi kombinatsioon valitud lahtrisse.
=ACOS(COS(RADIAAN(90-C5)) *COS(RADIAAN(90-C6)) +SIN(RADIAAN(90-C5)) *SIN(RADIAAN(90-C6)) *COS(RADIAAN(D5-D6))) *6371

  • Tulemuse vaatamiseks vajutage Sisesta klahvi kõige lõpus.

  • Seega, rakendades valemit, saame arvu 1357.033633 .

Loe edasi: Kuidas arvutada kahe GPS-koordinaadi vaheline kaugus Excelis

3. Exceli CONCATENATE ja SUBSTITUTE funktsioonide kombineerimine, et saada kahe linna vaheline kaugus

Kahe või isegi mitme sõnajärje ühendamiseks üheks fraasiks kasutage sõnaühendit tekstifunktsioon CONCATENATE . Ligikaudu kolmkümmend tekstiosad saab ühendada, kasutades Exceli CONCATENATE funktsioon, mis tagastab tulemuse tekstina. Funktsioon SUBSTITUTE excel kasutab võrdlemist, et muuta teksti määratud stringis. Me saame need kaks funktsiooni ühendada, et luua Google kaart link, et leida kahe aadressi vaheline kaugus kasutades. Kasutame valemit, et saada kahe linna vaheline kaugus, läbides sammud.

SAMMUD:

  • Samamoodi valige eelmises meetodis lahter, kus soovite omandada Google kaart ; sel juhul valime lahtri C8 .
  • Seejärel sisestage valem sellesse valitud lahtrisse.

=CONCATENATE("//maps.google.co.uk/maps?f=d&source=s_d&saddr=",

SUBSTITUTE(B5," ", "+"),"&daddr=",SUBSTITUTE(B6," ", "+"))

  • Tulemuste kuvamiseks vajutage Sisesta võti.

Selle valemi abil võite linkida Google kaart mis näitab marsruuti Los Angeles aadressile Pasco Linnad lisatakse lingile, kasutades funktsiooni CONCATENATE funktsiooni ja linnade nimed lisatakse kasutades funktsiooni ASENDAJA funktsioon.

  • Pärast seda sisestage see link oma brauseri otsingukasti, et teada saada, kui kaugel need kaks linna üksteisest asuvad.

The CONCATENATE ja ASENDAJA funktsioone võib Excelis kasutada ka kahe linna vahelise kauguse määramiseks planeedil.

Loe edasi: Kuidas arvutada miili kahe aadressi vahel Excelis (2 meetodit)

4. Loo LAMBDA funktsioon kahe linna vahelise kauguse arvutamiseks

Funktsioon LAMBDA Excelis kasutatakse kohandatud funktsioonide loomiseks, mida saab kasutada kogu töölehel ja millele saab ligi tuttavate nimedega. Kui see on defineeritud ja sellele on antud nimi, saame neid funktsioone kasutada ükskõik kus meie töövihikus.

Kauguse peamine võrrand on:

D = acos (sinΦ 1 . sinΦ 2 + cosΦ 1 . cosΦ 2 cos Δλ) . R

Isegi kui see võib tunduda veidi üle jõu käivana, on meie jaoks kõige olulisemad sisendid:

  • Alguspunkti laius- ja pikkuskraad.
  • Lõpliku asukoha laius- ja pikkuskraad.

Nii et valemis või võrrandis.

  • Δλ näitab pikkuskraadide erinevust ( lon_2-lon_1 ).
  • Φ 1 ja Φ 2 järjestikku näidata lat_1 ja lat_2 .
  • R näitab pinna raadiust.

Loome LAMBDA funktsiooni, et arvutada kahe linna vaheline kaugus, järgides alljärgnevaid samme.

SAMMUD:

  • Kõigepealt valige lahter C8 .
  • Edasi pange valem sellesse lahtrisse.
=LAMBDA(_lat1, _lon1, _lat2, _lon2, LET(lat_1, RADIANS(_lat1),lon_1, RADIANS(_lon1),lat_2,RADIANS(_lat2),lon_2, RADIANS(_lon2),r, 6378,ACOS((SIN(lat_1) * SIN(lat_2)) + (COS(lat_1) * COS(lat_2) * COS(lon_2-lon_1))) * r))(C5,D5,C6,D6)

  • Seejärel vajutage Sisesta .

  • See näitab tulemust, kuid valem on liiga suur ja seda võib olla raske mõista, kui seda mitu korda kasutada.
  • Selle asemel võime luua kohandatud valemi, kasutades selleks funktsiooni LAMBDA funktsioon.
  • Selleks minge aadressile Valemid vahekaart lindilt.
  • Vastavalt Määratletud nimed rühma, klõpsa Nimi Manager .

  • See kuvab Nimi Manager dialoogiaknas.
  • Nüüd klõpsake nuppu Uus menüü.

  • See viib teid Uus nimi aken.
  • Edasi nimetame valemi, sest me tahame arvutada kahe linna vahelise kauguse, seega paneme valemi nime CityDistance .
  • Seejärel sisestage järgmine valem väljale Viitab .

=LAMBDA(_lat1, _lon1, _lat2, _lon2, LET(lat_1, RADIANS(_lat1),lon_1, RADIANS(_lon1),lat_2,RADIANS(_lat2),lon_2, RADIANS(_lon2),r, 6378,ACOS((SIN(lat_1) * SIN(lat_2)) + (COS(lat_1) * COS(lat_2) * COS(lon_2-lon_1))) * r)))

  • Seejärel klõpsake OK .

  • See viib teid nimi Manager dialoog uuesti.
  • Lisaks sellele klõpsake nuppu Sulge nuppu, et protsess lõpule viia.

  • Nüüd leiate uue kohandatud funktsiooni CityDistance Ja funktsiooni abil saate kahe linna vahelise kauguse.

  • Seega, rakendades valemit, saame arvu 1358.524645 .

Loe lisaks: Kuidas arvutada Levenshteini kaugust Excelis (4 lihtsat meetodit)

5. Kahe linna vahelise kauguse arvutamine Exceli VBA abil

Making an API ( Rakenduse programmeerimisliides ) ühendus ja kasutades seda, et luua Kasutaja määratud funktsioon VBA-s on kaks muud võimalust kahe asukoha vahelise kauguse määramiseks. Asukoha andmete kogumiseks ühendab Excel läbi API mis tahes kaardile, sealhulgas Google kaart ja Bing kaart Seetõttu peame selle tehnika kasutamiseks kõigepealt looma API võti. See on tõesti lihtne, kuid kahjuks ainult Bing kaart pakub tasuta API , mitte Google'i. Me näitame seda viisi, kasutades vaba Bingi kaardi API võti. Vajuta siia luua oma Bing Map API võti .

SAMMUD:

  • Alustuseks oleme loonud API klahvi ja paigutas selle lahtrisse C8 .

  • Nüüd minge Arendaja vahekaart lindilt.
  • Siis, alates Kood kategooria, klõpsake Visual Basic avada Visual Basic toimetaja . või vajutage Alt + F11 avada Visual Basic toimetaja .

  • Selle asemel, et seda teha, võite lihtsalt paremklikk oma töölehel ja mine aadressile Vaata koodi See viib teid ka Visual Basic toimetaja .

  • See ilmub Visual Basic toimetaja .
  • Edasi klõpsake nuppu Moodul alates Sisesta rippmenüü riba.

  • See loob Moodul teie töövihikus.
  • Ja kopeeri ja kleebi VBA kood näidatud allpool.

VBA kood:

 Option Explicit Public Function CityDistance(First_City As String, Second_City 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.virtualearth.net/REST/v1/Routes/DistanceMatrix?origins=" Ending_Point = "&destinations=" Distance_Unit ="&travelMode=driving&o=xml&key=" & Target_Value & "&distanceUnit=km" Set Setup_HTTP = CreateObject("MSXML2.ServerXMLHTTP") Output_Url = Initial_Point & First_City & Ending_Point & Second_City & Distance_Unit Setup_HTTP.Open "GET", Output_Url, False Setup_HTTP.SetRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)" Setup_HTTP.Send("") CityDistance = Round(Round(WorksheetFunction.FilterXML(Setup_HTTP.ResponseText, _ "//TravelDistance"), 3), 0) End Function 
  • Salvesta kood, salvestades kogu töövihik mikrotöövihikuna ja laiendus on .xlsm .

  • See loob kasutaja määratud funktsiooni nime CityDistance .

VBA koodi selgitus

  • Alustuseks andsime oma Funktsioon nimi CityDistance . Esimene linn Stringina, Teine linn As String ja Sihtväärtus Argumentidena on lisatud ka String.
  • Siis me deklareerisime Setup HTTP objektina ja Esialgne punkt , Lõpp-punkt , Kauguse üksus ja Väljund Url nagu Stringid.
  • Hiljem muutsime me Kauguse üksus aadressile kilomeeter ja Esialgne punkt alguspunktile Url link.
  • Järgmisena määrame parameetrid, mis on vajalikud ühenduse loomiseks meie VBA kood ja API .
  • Seejärel lõime oma Kasutaja määratud funktsioon .

Kokkuvõte

Ülaltoodud meetodid aitavad teil Kahe linna vahelise kauguse arvutamine Excelis Loodan, et see aitab teid! Palun andke meile kommentaaride sektsioonis teada, kui teil on küsimusi, ettepanekuid või tagasisidet. Või võite heita pilgu meie teistesse artiklitesse aadressil ExcelWIKI.com blogi!

Hugh West on suurte kogemustega Exceli koolitaja ja analüütik, kellel on selles valdkonnas üle 10-aastane kogemus. Tal on raamatupidamise ja rahanduse bakalaureusekraad ning ärijuhtimise magistrikraad. Hugh’l on kirg õpetamise vastu ning ta on välja töötanud ainulaadse õpetamisviisi, mida on lihtne järgida ja mõista. Tema Exceli ekspertteadmised on aidanud tuhandetel õpilastel ja spetsialistidel üle maailma oma oskusi parandada ja karjääris silma paista. Oma ajaveebi kaudu jagab Hugh oma teadmisi maailmaga, pakkudes tasuta Exceli õpetusi ja veebikoolitusi, mis aitavad üksikisikutel ja ettevõtetel oma potentsiaali täielikult ära kasutada.