Turinys
Yra keletas naudojimo būdų "Excel" . Šauni speciali funkcija ir formulė "Microsoft Excel gali nustatyti atstumą tarp dviejų konkrečių miestų ar vietovių planetoje. Labai svarbu sugebėti apskaičiuoti atstumą tarp bet kurių dviejų vietų žemėlapyje. Tai leidžia apskaičiuoti tikrąjį atstumą ir leis jums tinkamai įvertinti, kiek laiko užtruks jūsų kelionė. Tačiau naudodamiesi "Excel" galime tai lengvai padaryti. Šiame straipsnyje pademonstruosime keletą būdų, kaip "Excel" programa apskaičiuoti atstumą tarp dviejų miestų.
Atsisiųsti praktikos sąsiuvinį
Galite atsisiųsti pratybų sąsiuvinį ir pasipraktikuoti su jais.
Apskaičiuoti atstumą tarp dviejų miestų.xlsmDuomenų rinkinio įvadas
Norėdami apskaičiuoti atstumą tarp dviejų miestų, pirmiausia turime paruošti duomenų rinkinį. Tarkime, kad turime du miestus Los Andželas kuris yra didelis miestas valstijoje Kalifornija , ir Pasco kuris yra miestas Vašingtonas Dabar reikia rasti atstumą tarp jų. Tam turime žinoti platuma ir ilguma abiejų miestų geografinės platumos ir ilgumos. Bet kurio miesto geografinės platumos ir ilgumos duomenis galime tiesiog rasti naudodamiesi "Excel" programa. Pažiūrėkime, kaip tai galime padaryti.
ŽINGSNIAI:
- Pirmiausia pasirinkite langelį, kuriame įrašome miestų pavadinimus. Mūsų atveju pasirenkame langelius B5 , ir B6 .
- Antra, eikite į Duomenys skirtuką iš juostos.
- Trečia, į Duomenų tipai kategorijos spustelėkite Geografija .
- Tada, norėdami rasti platumą, pasirinkite ląstelę, į kurią įrašėte platumą, ir joje įveskite formulę.
=B5.Latitude
- Paspauskite Įveskite pamatyti rezultatą.
- Panašiai randame ląstelės platumą B6 .
- Dabar, norėdami sužinoti ilgumą, taip pat platumą, pasirinkite ląstelę ir įrašykite į ją šią formulę.
=B5.Longitude
- Paspauskite Įveskite klaviatūros klavišą.
- Panašiai gauname B6 ilgumą, atlikdami ankstesnius veiksmus.
- Štai ir viskas, dabar turime abiejų miestų platumos ir ilgumos duomenis. Taigi, mūsų duomenų rinkinys jau paruoštas naudoti.
5 skirtingi atstumo tarp dviejų miestų apskaičiavimo "Excel" metodai
Radę atstumą tarp dviejų vietovių galėsime nustatyti atstumą tarp dviejų gyvenamųjų namų. Remdamiesi šia informacija galime įvertinti, kiek laiko užtruksime keliaudami tarp namų. Norėdami rasti atstumą tarp dviejų miestų, naudojame pirmiau pateiktą duomenų rinkinį, kurį ką tik sudarėme.
1. Taikykite Haversino formulę atstumui tarp dviejų miestų apskaičiuoti
Viena iš pagrindinių vandenynų tyrinėjimo lygčių yra Haversino formulė , kurį galima naudoti atstumui tarp dviejų vietų sferinėje plokštumoje apskaičiuoti, jei nustatoma jų geografinė platuma ir ilguma bei pusiaujo spindulys. GPS prietaisai iš esmės ją automatizavo. Atlikime veiksmus, kaip naudoti formulę atstumui tarp dviejų miestų apskaičiuoti.
ŽINGSNIAI:
- Pirmiausia pasirinkite ląstelę, kurioje norite gauti atstumą, taigi, mes pasirenkame ląstelę C8 .
- Tada įdėkite Haversino formulė į pasirinktą ląstelę.
=3959*ASIN(SQRT((SIN(C6-C5)/2)^2+COS(C5)*COS(C6)*(SIN(D6-D5)/2)^2))
- Galiausiai paspauskite Įveskite klavišą, kad pamatytumėte rezultatą.
- Taigi, naudodami formulę gauname rezultatą 1367.581282 .
Skaityti daugiau: Kaip apskaičiuoti atstumą tarp dviejų adresų "Excel" programoje
2. Apskaičiuokite atstumą tarp dviejų miestų naudodami "Excel" ACOS, SIN, COS ir RADIANS funkcijas
Vertės atvirkštinis kosinusas yra tai, ką ACOS funkcija kampo sinusą radianais grąžina "Excel" funkcija SIN . Kampo kosinusą radianais grąžina COS funkcija . Radianai keičiami į laipsnius naudojant "Excel" funkcija RADIANS . Galime sujungti šias funkcijas, kad gautume atstumą tarp dviejų miestų. Taip pat iš esmės buvo automatizuotas naudojant GPS prietaisai. Taikykime šių funkcijų kombinaciją, kad gautume atstumą tarp dviejų miestų, atlikdami šiuos veiksmus.
ŽINGSNIAI:
- Pirmiausia pasirinkite langelį, kuriame norite nustatyti atstumą; šiuo atveju pasirenkame langelį C8 .
- Po to į pasirinktą ląstelę įterpkite funkcijos formulės derinį.
=ACOS(COS(RADIANS(90-C5)) *COS(RADIANS(90-C6)) +SIN(RADIANS(90-C5)) *SIN(RADIANS(90-C6)) *COS(RADIANS(D5-D6))) *6371
- Norėdami peržiūrėti rezultatus, paspauskite Įveskite klavišą pačioje pabaigoje.
- Taigi, pritaikę formulę, gauname skaičių 1357.033633 .
Skaityti daugiau: Kaip apskaičiuoti atstumą tarp dviejų GPS koordinačių programoje "Excel
3. Sujunkite "Excel" CONCATENATE ir SUBSTITUTE funkcijas, kad gautumėte atstumą tarp dviejų miestų
Norėdami sujungti dvi ar net daugiau žodžių sekų į vieną frazę, naudokite teksto funkcija CONCATENATE ........................... trisdešimt teksto dalis galima sujungti naudojant "Excel CONCATENATE funkcija, kuri grąžina rezultatą kaip tekstą. Funkcija SUBSTITUTE excel naudoja lyginimą, kad pakeistų nurodytos eilutės tekstą. Galime sujungti šias dvi funkcijas ir sukurti "Google" žemėlapis nuorodą, kad rastumėte atstumas tarp dviejų adresų naudodami. Naudokime formulę atstumui tarp dviejų miestų nustatyti, atlikdami šiuos veiksmus.
ŽINGSNIAI:
- Panašiai, kaip ir ankstesniame metode, pasirinkite ląstelę, kurioje norite gauti "Google" žemėlapis ; šiuo atveju pasirenkame ląstelę C8 .
- Tada į pasirinktą ląstelę įveskite formulę.
=CONCATENATE("//maps.google.co.uk/maps?f=d&source=s_d&saddr=",
SUBSTITUTE(B5," ", "+"),"&daddr=",SUBSTITUTE(B6," ", "+"))
- Norėdami parodyti rezultatus, paspauskite Įveskite raktas.
Naudodami šią formulę galite susieti "Google" žemėlapis kuriame rodomas maršrutas iš Los Andželas į Pasco . Miestai bus pridėti prie nuorodos naudojant CONCATENATE funkcija, o miestų pavadinimai bus pridėti naudojant SUBSTITUTAS funkcija.
- Po to naršyklės paieškos laukelyje įveskite šią nuorodą ir sužinokite, kaip toli vienas nuo kito nutolę šie du miestai.
Svetainė CONCATENATE ir SUBSTITUTAS "Excel" programoje taip pat galima naudoti funkcijas atstumui tarp dviejų planetos miestų nustatyti.
Skaityti daugiau: Kaip "Excel" programoje apskaičiuoti mylias tarp dviejų adresų (2 metodai)
4. Sukurkite LAMBDA funkciją atstumui tarp dviejų miestų apskaičiuoti
LAMBDA funkcija programoje "Excel" naudojama kuriant pritaikytas funkcijas, kurias galima naudoti visame darbalapyje ir pasiekti žinomais pavadinimais. Apibrėžus ir suteikus pavadinimą, tas funkcijas galime naudoti bet kurioje darbalaukio vietoje.
Pagrindinė atstumo lygtis yra tokia:
D = acos (sinΦ
1
. sinΦ
2
+ cosΦ
1
. cosΦ
2
cos
Δλ)
. R
Nors tai gali pasirodyti šiek tiek pribloškiantis dalykas, mums svarbiausi yra šie duomenys:
- Pradinio taško platuma ir ilguma.
- Galutinės vietos geografinė platuma ir ilguma.
Taigi formulėje arba lygtyje.
- Δλ rodo ilgumų skirtumą ( lon_2-lon_1 ).
- Φ 1 ir Φ 2 nuosekliai nurodyti lat_1 ir lat_2 .
- R nurodo paviršiaus spindulį.
Sukurkime LAMBDA funkciją, kad apskaičiuotumėte atstumą tarp dviejų miestų, atlikdami toliau nurodytus veiksmus.
ŽINGSNIAI:
- Pirmiausia pasirinkite langelį C8 .
- Toliau į tą ląstelę įrašykite formulę.
=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))(C5,D5,C6,D6)
- Tada paspauskite Įveskite .
- Tai parodys rezultatą, tačiau formulė yra per didelė ir ją naudojant daug kartų gali būti sunku suprasti.
- Taigi, užuot tai darę, galime sukurti pritaikytą formulę naudodami LAMBDA funkcija.
- Šiuo tikslu eikite į Formulės skirtuką iš juostos.
- Pagal Apibrėžti pavadinimai grupę, spustelėkite Vardas ir pavardė Vadybininkas .
- Bus rodomas Vardas ir pavardė Vadybininkas dialogo langas.
- Dabar spustelėkite Naujas meniu.
- Taip pereisite į Naujas pavadinimas langas.
- Toliau formulę pavadinkite, nes norime apskaičiuoti atstumą tarp dviejų miestų, todėl įrašome formulės pavadinimą CityDistance .
- Tada į lauką įrašykite šią formulę Nurodo .
=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)))
- Tada spustelėkite GERAI .
- Taip pereisite į vardas ir pavardė Vadybininkas vėl dialogas.
- Be to, spustelėkite Uždaryti mygtuką, kad procesas būtų baigtas.
- Dabar galite rasti naują pasirinktinę funkciją CityDistance . Naudodami šią funkciją gausite atstumą tarp dviejų miestų.
- Taigi, pritaikę formulę, gauname skaičių 1358.524645 .
Skaityti daugiau: Kaip apskaičiuoti Levenšteino atstumą programoje "Excel" (4 paprasti metodai)
5. Apskaičiuokite atstumą tarp dviejų miestų naudodami "Excel VBA
Padaryti API ( Taikomosios programos sąsaja ) ryšys ir jo panaudojimas kuriant Naudotojo apibrėžta funkcija VBA yra du kiti būdai atstumui tarp dviejų vietų nustatyti. Norėdama surinkti duomenis apie vietą, "Excel" jungiasi per API į bet kurį žemėlapį, įskaitant "Google" žemėlapis ir "Bing" žemėlapis . Todėl, norėdami naudoti šį metodą, pirmiausia turime nustatyti API raktas. Tai labai paprasta, bet, deja, tik "Bing" žemėlapis siūlo nemokamą API , o ne "Google". Šį būdą parodysime naudodamiesi nemokama "Bing" žemėlapio API raktas. Spauskite čia sukurti savo "Bing" žemėlapio API raktas .
ŽINGSNIAI:
- Pirmiausia sukūrėme API klavišą ir padėjo jį ant ląstelės C8 .
- Dabar eikite į Kūrėjas skirtuką iš juostos.
- Tada iš Kodas kategoriją, spustelėkite "Visual Basic atidaryti "Visual Basic" redaktorius . Arba paspauskite Alt + F11 atidaryti "Visual Basic" redaktorius .
- Užuot tai darę, galite tiesiog dešiniuoju pelės klavišu spustelėkite savo darbalapyje ir eikite į Peržiūrėti kodą . Taip pat pateksite į "Visual Basic" redaktorius .
- Tai bus rodoma "Visual Basic" redaktorius .
- Be to, spustelėkite Modulis iš Įdėkite išskleidžiamojo meniu juostoje.
- Taip bus sukurtas Modulis savo sąsiuvinyje.
- Nukopijuokite ir įklijuokite VBA kodas parodyta toliau.
VBA kodas:
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
- Išsaugokite kodą išsaugodami visą darbaknygę kaip mikroknygą, o plėtinys bus .xlsm .
- Taip bus sukurtas vartotojo apibrėžtas funkcijos pavadinimas CityDistance .
VBA kodo paaiškinimas
- Pradėjome nuo to, kad suteikėme savo Funkcija pavadinimas CityDistance . Pirmasis miestas Kaip eilutė, Antrasis miestas kaip eilutę ir Tikslinė vertė Kaip argumentai taip pat buvo įtraukti "String".
- Tada mes paskelbėme. HTTP sąrankos nustatymas kaip objektą ir Pradinis taškas , Galutinis taškas , Atstumo vienetas , ir Išvesties URL kaip stygos.
- Vėliau pakeitėme Atstumo vienetas į kilometras ir Pradinis taškas į pradinį tašką URL adresas nuoroda.
- Toliau nustatome parametrus, reikalingus ryšiui tarp mūsų VBA kodas ir API .
- Tada sukūrėme savo Naudotojo apibrėžta funkcija .
Išvada
Šie metodai padės jums Apskaičiuoti atstumą tarp dviejų miestų "Excel" programoje . Tikimės, kad tai jums padės! Jei turite klausimų, pasiūlymų ar atsiliepimų, praneškite mums komentarų skiltyje. Arba galite peržvelgti kitus mūsų straipsnius, esančius ExcelWIKI.com tinklaraštis!