Obsah
Existuje niekoľko spôsobov použitia Excel Špeciálna funkcia a vzorec v Microsoft Excel môže určiť vzdialenosť medzi dvoma konkrétnymi mestami alebo miestami na planéte. Je veľmi dôležité, aby bolo možné vypočítať vzdialenosť medzi ľubovoľnými dvoma miestami na mape. Umožní vám vypočítať skutočnú vzdialenosť a poskytne vám slušný odhad, ako dlho vám bude trvať cesta. S programom Excel to však dokážeme jednoducho. V tomto článku si ukážeme niekoľko spôsobov, ako vypočítať vzdialenosť medzi dvoma mestami v programe Excel.
Stiahnite si cvičebnicu
Môžete si stiahnuť pracovný zošit a precvičovať s nimi.
Výpočet vzdialenosti medzi dvoma mestami.xlsmÚvod do súboru údajov
Ak chceme vypočítať vzdialenosť medzi dvoma mestami, musíme najprv pripraviť súbor údajov. Predpokladajme, že máme dve mestá Los Angeles ktoré je veľkým mestom v štáte Kalifornia a Pasco čo je mesto Washington Teraz potrebujeme zistiť vzdialenosť medzi nimi. Na to musíme poznať zemepisná šírka a zemepisná dĺžka oboch miest. Pomocou programu Excel môžeme jednoducho zistiť zemepisnú šírku a dĺžku ľubovoľného mesta. Pozrime sa, ako to môžeme urobiť.
KROKY:
- Najprv vyberte bunku, do ktorej sme vložili názov miest. V našom prípade vyberieme bunky B5 a B6 .
- Po druhé, prejdite na Údaje na páse kariet.
- Po tretie, v Typy údajov kategórie kliknite na Geografia .
- Ak chcete zistiť zemepisnú šírku, vyberte bunku, do ktorej ste vložili zemepisnú šírku, a zadajte do nej vzorec.
=B5.Latitude
- Tlač Vstúpte na stránku aby ste videli výsledok.
- Podobne zistíme zemepisnú šírku bunky B6 .
- Ak chcete zistiť zemepisnú dĺžku a rovnako aj šírku, vyberte bunku a vložte do nej nasledujúci vzorec.
=B5.Longitude
- Stlačte tlačidlo Vstúpte na stránku na klávesnici.
- Podobne dostaneme B6 dĺžky podľa predchádzajúcich krokov.
- To je všetko, teraz máme zemepisnú šírku a dĺžku oboch miest. Takže náš súbor údajov je teraz pripravený na použitie.
5 rôznych metód na výpočet vzdialenosti medzi dvoma mestami v programe Excel
Zistenie vzdialenosti medzi dvoma miestami nám potom umožní určiť vzdialenosť medzi dvoma obydliami. Na základe tejto informácie môžeme odhadnúť, ako dlho nám bude trvať cesta medzi obydliami. Na zistenie vzdialenosti medzi dvoma mestami použijeme vyššie uvedený súbor údajov, ktorý sme práve vytvorili.
1. Použite Haversinov vzorec na výpočet vzdialenosti medzi dvoma mestami
Jednou zo základných rovníc pre prieskum oceánov je Vzorec Haversine , ktorý sa dá použiť na výpočet vzdialenosti medzi dvoma miestami na guľovej rovine, ak určíte ich zemepisnú šírku a dĺžku a tiež polomer pologule. GPS zariadenia v podstate zautomatizovali. Postupujme podľa krokov na použitie vzorca na výpočet vzdialenosti medzi dvoma mestami.
KROKY:
- Na začiatku vyberte bunku, v ktorej chcete získať vzdialenosť, takže vyberieme bunku C8 .
- Potom vložte Vzorec Haversine do vybranej bunky.
=3959*ASIN(SQRT((SIN(C6-C5)/2)^2+COS(C5)*COS(C6)*(SIN(D6-D5)/2)^2))
- Nakoniec stlačte tlačidlo Vstúpte na stránku a zobrazí sa výsledok.
- Takže pomocou vzorca dostaneme výsledok 1367.581282 .
Prečítajte si viac: Ako vypočítať vzdialenosť medzi dvoma adresami v programe Excel
2. Výpočet vzdialenosti medzi dvoma mestami pomocou funkcií Excel ACOS, SIN, COS a RADIANS
Inverzný kosínus hodnoty je to, čo funkcia ACOS Sínus uhla v radiánoch sa vracia pomocou funkcia Excel SIN Kosínus uhla v radiánoch sa vráti pomocou funkcia COS . Radiány sa menia na stupne pomocou funkcia Excel RADIANS . Tieto funkcie môžeme kombinovať, aby sme získali vzdialenosť medzi dvoma mestami. Taktiež bola v podstate automatizovaná pomocou GPS zariadenia. Použime kombináciu týchto funkcií na získanie vzdialenosti medzi dvoma mestami, pričom prejdeme jednotlivými krokmi.
KROKY:
- V prvom rade vyberte bunku, v ktorej chcete získať vzdialenosť; v tomto prípade vyberieme bunku C8 .
- Potom vložte kombináciu vzorca funkcie do vybranej bunky.
=ACOS(COS(RADIANS(90-C5)) *COS(RADIANS(90-C6)) +SIN(RADIANS(90-C5)) *SIN(RADIANS(90-C6)) *COS(RADIANS(D5-D6))) *6371
- Ak chcete zobraziť výsledok, stlačte tlačidlo Vstúpte na stránku na samom konci.
- Použitím vzorca teda dostaneme číslo 1357.033633 .
Prečítajte si viac: Ako vypočítať vzdialenosť medzi dvoma súradnicami GPS v programe Excel
3. Kombinácia funkcií Excel CONCATENATE a SUBSTITUTE na získanie vzdialenosti medzi dvoma mestami
Ak chcete spojiť dve alebo viac slovných sekvencií do jednej frázy, použite textová funkcia CONCATENATE . približne tridsať textové časti možno spojiť pomocou programu Excel CONCATENATE ktorá vráti výsledok ako text. Funkcia SUBSTITUTE excelu používa porovnávanie na úpravu textu v zadanom reťazci. Tieto dve funkcie môžeme skombinovať a vytvoriť Mapa Google odkaz na vyhľadanie vzdialenosť medzi dvoma adresami Pomocou. Využime vzorec na určenie vzdialenosti medzi dvoma mestami, pričom si prejdeme jednotlivé kroky.
KROKY:
- Podobne v predchádzajúcej metóde vyberte bunku, v ktorej chcete získať Mapa Google ; v tomto prípade si vyberieme bunku C8 .
- Potom do vybranej bunky zadajte vzorec.
=CONCATENATE("//maps.google.co.uk/maps?f=d&source=s_d&saddr=",
SUBSTITUTE(B5," ", "+"),"&daddr=",SUBSTITUTE(B6," ", "+"))
- Ak chcete zobraziť výsledky, stlačte tlačidlo Vstúpte na stránku kľúč.
Pomocou tohto vzorca môžete vytvoriť odkaz na Mapa Google ktorý zobrazuje trasu z Los Angeles na Pasco . Mestá sa pridajú do prepojenia pomocou CONCATENATE a názvy miest sa pridajú pomocou funkcie SUBSTITUTE funkcie.
- Potom zadajte tento odkaz do vyhľadávacieho poľa prehliadača a zistite, ako ďaleko sú od seba tieto dve mestá.
Stránka CONCATENATE a SUBSTITUTE funkcie možno v programe Excel použiť aj na určenie vzdialenosti medzi dvoma mestami na planéte.
Prečítajte si viac: Ako vypočítať počet kilometrov medzi dvoma adresami v programe Excel (2 metódy)
4. Vytvorenie funkcie LAMBDA na výpočet vzdialenosti medzi dvoma mestami
Funkcia LAMBDA v programe Excel slúži na vytváranie vlastných funkcií, ktoré možno využiť v celom hárku a pristupovať k nim pomocou známych názvov. Po ich definovaní a pomenovaní môžeme tieto funkcie používať kdekoľvek v našom zošite.
Hlavná rovnica pre vzdialenosť je:
D = acos (sinΦ
1
. sinΦ
2
+ cosΦ
1
. cosΦ
2
cos
Δλ)
. R
Aj keď sa to môže zdať trochu ohromujúce, najdôležitejšie sú pre nás vstupy:
- Zemepisná šírka a dĺžka východiskového bodu.
- Zemepisná šírka a dĺžka konečného miesta.
Takže vo vzorci alebo rovnici.
- Δλ označuje rozdiel medzi dĺžkami ( lon_2-lon_1 ).
- Φ 1 a Φ 2 postupne uvádzať lat_1 a lat_2 .
- R označuje polomer povrchu.
Vytvorme LAMBDA na výpočet vzdialenosti medzi dvoma mestami podľa nasledujúcich krokov.
KROKY:
- Najprv vyberte bunku C8 .
- Ďalej do tejto bunky vložte vzorec.
=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)
- Potom stlačte tlačidlo Vstúpte na stránku .
- Zobrazí sa výsledok, ale vzorec je príliš veľký a pri viacnásobnom použití môže byť ťažko pochopiteľný.
- Namiesto toho môžeme vytvoriť vlastný vzorec pomocou LAMBDA funkcie.
- Na tento účel prejdite na stránku Vzorce na páse kariet.
- V rámci Definované názvy skupiny, kliknite na Názov manažéra .
- Zobrazí sa Názov manažéra dialógové okno.
- Teraz kliknite na Nový menu.
- Tým sa dostanete na Nový názov okno.
- Ďalej pomenujte vzorec, keďže chceme vypočítať vzdialenosť medzi dvoma mestami, tak uvedieme názov vzorca CityDistance .
- Potom vložte nasledujúci vzorec do poľa Vzťahuje sa na .
=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))
- Potom kliknite na tlačidlo OK .
- Tým sa dostanete na meno Manažér opäť dialóg.
- Ďalej kliknite na Zatvoriť na dokončenie procesu.
- Teraz môžete nájsť novú vlastnú funkciu CityDistance . A pomocou funkcie získate vzdialenosť medzi dvoma mestami.
- Použitím vzorca teda dostaneme číslo 1358.524645 .
Prečítajte si viac: Ako vypočítať Levenshteinovu vzdialenosť v programe Excel (4 jednoduché metódy)
5. Výpočet vzdialenosti medzi dvoma mestami pomocou programu Excel VBA
Vytváranie API ( Rozhranie na programovanie aplikácií ) a jeho využitie na vytvorenie Funkcia definovaná používateľom vo VBA sú dva ďalšie spôsoby určenia vzdialenosti medzi dvoma miestami. Ak chcete získať údaje o mieste, Excel sa pripojí prostredníctvom API na akúkoľvek mapu vrátane Mapa Google a Mapa Bing Preto, aby sme mohli použiť túto techniku, musíme najprv stanoviť API To je naozaj jednoduché, ale bohužiaľ, len Mapa Bing ponúka bezplatnú API , nie Google. Tento spôsob demonštrujeme využitím bezplatného Rozhranie API služby Bing Map kľúč. Kliknite sem na vytvorenie vlastného Kľúč API služby Bing Map .
KROKY:
- Na začiatok sme vytvorili API a umiestnil ho na bunku C8 .
- Teraz prejdite na Vývojár na páse kariet.
- Potom z Kód kliknite na kategóriu Visual Basic otvoriť Editor jazyka Visual Basic . Alebo stlačte Alt + F11 otvoriť Editor jazyka Visual Basic .
- Namiesto toho môžete jednoducho kliknutie pravým tlačidlom myši na na pracovnom hárku a prejdite na Zobraziť kód Tým sa dostanete aj na Editor jazyka Visual Basic .
- Táto informácia sa zobrazí v Editor jazyka Visual Basic .
- Ďalej kliknite na Modul z Vložte rozbaľovací panel ponuky.
- Tým sa vytvorí Modul v zošite.
- A skopírujte a vložte Kód VBA uvedené nižšie.
Kód VBA:
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
- Uloženie kódu uložením celého zošita ako zošita s mikroprocesorom a rozšírenie bude .xlsm .
- Tým sa vytvorí názov funkcie definovaný používateľom CityDistance .
Vysvetlenie kódu VBA
- Začali sme tým, že sme dali náš Funkcia názov CityDistance . Prvé mesto Ako reťazec, Druhé mesto ako reťazec a Cieľová hodnota Ako argumenty boli uvedené aj reťazce.
- Potom sme vyhlásili. Nastavenie HTTP ako objekt a Počiatočný bod , Koncový bod , Jednotka vzdialenosti a Výstupná URL adresa ako reťazce.
- Neskôr sme zmenili Jednotka vzdialenosti na kilometer a Počiatočný bod do východiskového bodu Url prepojenie.
- Ďalej nastavíme parametre potrebné na vytvorenie spojenia medzi našou Kód VBA a API .
- Potom sme vytvorili náš Funkcia definovaná používateľom .
Záver
Vyššie uvedené metódy vám pomôžu Výpočet vzdialenosti medzi dvoma mestami v programe Excel Dúfam, že vám to pomôže! Ak máte nejaké otázky, návrhy alebo pripomienky, dajte nám vedieť v sekcii komentárov. Alebo si môžete pozrieť naše ďalšie články v ExcelWIKI.com blog!