Obsah
V článku se dozvíte, jak vypočítat vzdálenost mezi dvěma adresami v Excelu. Microsoft Excel má tuto skvělou speciální funkci a vzorec pro zjištění vzdálenosti mezi dvěma místy na světě. Pokud máte Souřadnice GPS dvou míst, můžete snadno určit vzdálenost mezi těmito místy v libovolné jednotce.
Stáhnout cvičebnici
Výpočet vzdálenosti mezi dvěma adresami.xlsm
3 způsoby výpočtu vzdálenosti mezi dvěma adresami v aplikaci Excel
V našem souboru dat máme Zeměpisná šířka a Zeměpisná délka pro Ohio a Aljaška . Změříme vzdálenost mezi nimi.
Na stránkách Zeměpisné šířky pro Ohio a Aljaška jsou 40.4173 Sever a 64.2008 Severní Také Zeměpisné délky pro Ohio a Aljaška jsou 82.9071 Západ a 149.4937 Západ resp.
1. Použití Haversinova vzorce pro výpočet vzdálenosti mezi dvěma adresami
Pokud jste dobří v matematice, můžete používat Vzorec Haversine bude pro vás ideální. I když vám poskytne přibližný výsledek, je to docela dobrý výsledek.
Nejprve musíme znát základní vzorec délky oblouku . A pomocí tohoto vzorce ji porovnáme se vzdáleností mezi dvěma místy na Zemi. Vzorec je uveden níže.
S = rθ
S = vzdálenost mezi dvěma adresami
r = poloměr Země
θ = úhel, který svírají obě adresy ve středu Země.
Ale pokud máte Souřadnice GPS ze dvou míst, je třeba určit z Vzorec Haversine Podívejte se na Vzorec Haversine uvedeno níže.
Když to porovnáte s vzorec pro délku oblouku , dostanete jako na následujícím obrázku.
Seznámíme vás s parametry nástroje Vzorec Haversine .
φ 1 = Zeměpisná šířka prvního místa
φ 2 = zeměpisná šířka druhého místa
ℽ 1 = zeměpisná délka prvního místa
ℽ 2 = zeměpisná šířka druhého místa
Nyní vám ukážu, jak tento vzorec použít v aplikaci Excel krok za krokem.
Kroky:
- Nejprve vytvořte buňku pro uložení hodnoty vzdálenosti a do buňky zadejte následující vzorec C8 .
=2*6400*ASIN(SQRT((SIN(C6-C5)/2)^2+COS(C5)*COS(C6)*(SIN(D6-D5)/2)^2))
Vzorec používá ASIN , SQRT , SIN a COS funkce Je to jednoduché, když se podíváte na údaje o Vzorec Haversine Vzdálenost měříme v kilometry , takže poloměr Země v kilometrech, což je 6400 km . ASIN odkazuje na inverzní sinus nebo ArcSine Pokud porovnáme úhly parametrů Vzorec Haversine s naším vzorcem Excelu dostaneme,
1 = Zeměpisná šířka Ohia (C5)
2 = zeměpisná šířka Aljašky (C6)
ℽ 1 = Zeměpisná délka Ohia (D5)
ℽ 2 = zeměpisná šířka Aljašky (D6)
- Poté stiskněte tlačítko ENTER zobrazit vzdálenost mezi Ohio a Aljaška na adrese Kilometry .
- Poté, pokud chcete změřit vzdálenost v mílích , použijte následující vzorec v buňce C8 .
=2*3959*ASIN(SQRT((SIN(C6-C5)/2)^2+COS(C5)*COS(C6)*(SIN(D6-D5)/2)^2))
Zde jsme použili stejný vzorec aplikace Excel, který jsme použili pro zjištění vzdálenosti v. míle Z tohoto důvodu bereme poloměr Země v. míle což je 3959 .
Můžete tedy vypočítat vzdálenost mezi dvěma adresami země v aplikaci Excel pomocí příkazu Vzorec Haversine .
Přečtěte si více: Jak vypočítat vzdálenost mezi dvěma souřadnicemi v aplikaci Excel (2 metody)
2. Použití funkcí CONCATENATE a SUBSTITUTE aplikace Excel k výpočtu vzdálenosti mezi dvěma adresami
Můžete vytvořit Mapa Google odkaz na vyhledání vzdálenost mezi dvěma adresami pomocí aplikace Excel CONCATENATE a SUBSTITUTE Funkce . Projděme si níže uvedený postup.
Kroky:
- Nejprve zadejte následující vzorec C8 .
=CONCATENATE("//maps.google.co.uk/maps?f=d&source=s_d&saddr=",
SUBSTITUTE(B5," ", "+"),"&daddr=",SUBSTITUTE(B6," ", "+"))
Tento vzorec vytvoří Mapa Google odkaz, jak můžete cestovat z Ohio na Aljaška . CONCATENATE přidá funkci adresy v odkazu a SUBSTITUTE funkce umístí název adresy .
- Poté stiskněte tlačítko ENTER a zobrazí se tlačítko Mapa Google odkaz v C8 .
- Poté použijte tento odkaz v internetovém vyhledávacím řádku a zobrazí se vám vzdálenost informace o těchto dvě adresy .
Nakonec můžete vypočítat vzdálenost mezi dvěma adresami země v aplikaci Excel použitím CONCATENATE a SUBSTITUTE funkce.
Přečtěte si více: Jak vypočítat vzdálenost mezi dvěma městy v aplikaci Excel
3. Použití VBA k výpočtu vzdálenosti mezi dvěma adresami v aplikaci Excel
Další způsob výpočtu vzdálenost mezi dvěma adresami může být vytvoření API ( Rozhraní pro programování aplikací ) a jeho použití k vytvoření Funkce definovaná uživatelem podle VBA . Můžete si vytvořit API odkaz v Bing zdarma. Mapa Bing vlastní klíč API, klikněte zde .
Kroky:
- Nejprve přejděte na Vývojář >> Visual Basic .
- Poté vyberte Vložte >> Modul otevřít Modul VBA .
- Později zadejte následující kód do pole Modul VBA Vytváříme Funkce definovaná uživatelem vypočítat vzdálenost na adrese míle .
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.virtualearth.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 (compatible; MSIE 6.0; Windows NT 5.0)"Setup_HTTP.Send ("") DistanceInMiles = Round(Round(WorksheetFunction.FilterXML(Setup_HTTP.ResponseText, _"//TravelDistance"), 3), 0) End Function
Vysvětlení kódu
- Nejprve jsme pojmenovali naši Funkce jako DistanceInMiles . Vložili jsme také 3 parametry: First_Location As String, Final_Location As String a Target_Value As String .
- Poté jsme prohlásili. Initial_Point , Ending_Point , Distance_Unit a Outout_Url jako Řetězec ; Setup_HTTP jako Objekt .
- Později jsme nastavili Initial_Point jako počátek Odkaz na URL , Ending_Point jako Cílová destinace a Distance_Unit na Miles .
- Poté nastavíme potřebné parametry pro vytvoření vztahu mezi naším VBA kód a API
- Nakonec jsme stanovili naše Funkce definovaná uživatelem .
- Poté jsme podle stejných postupů provedli další Funkce definovaná uživatelem zjistit vzdálenost v kilometry .
Vidíte, že jsme právě změnili Distance_Unit na kilometry .
- Na následujícím obrázku vidíte. API klíč v buňce C8 .
- Poté zadejte do buňky následující vzorec C8 .
=VzdálenostV mílích(E5,E6,C8)
- Poté stiskněte tlačítko ENTER a zobrazí se tlačítko vzdálenost mezi Ohio a Aljaška na adrese míle .
- Poté použijte následující vzorec, abyste zjistili. vzdálenost na adrese kilometr .
=VzdálenostVKM(E5,E6,C8)
Můžete tedy vypočítat vzdálenost mezi dvěma adresami pomocí VBA a API klíč.
Přečtěte si více: Jak vypočítat dojezdovou vzdálenost mezi dvěma adresami v aplikaci Excel
Na co nezapomenout
- Mějte na paměti, že je třeba dát přibližně správné Souřadnice GPS těchto uvádí v údajích, protože k zjištění vzdálenosti používáte internet. Jak se uvádí jsou západní na Linka Meridian Line , obě jejich Zeměpisné délky bude záporná.
Praktická část
V této části vám poskytnu datovou sadu tohoto článku, abyste si mohli tyto metody sami vyzkoušet.
Závěr
Stačí říci, že se naučíte velmi účinné metody, jak vypočítat vzdálenost mezi dvěma adresami v Excelu po přečtení tohoto článku. Pokud máte nějaké lepší metody nebo otázky či zpětnou vazbu týkající se tohoto článku, podělte se o ně v poli pro komentáře. Pomůže mi to obohatit mé další články. Pro další dotazy navštivte laskavě naše webové stránky. ExcelWIKI.com .