Inhoudsopgave
Er zijn verschillende toepassingen voor Excel De coole speciale functie en formule in Microsoft Excel kan de scheiding tussen twee specifieke steden of locaties op de planeet bepalen. Het is cruciaal om te kunnen bereken de afstand tussen twee willekeurige plaatsen op een kaart. Hiermee kunt u de werkelijke afstand berekenen en krijgt u een goede schatting van hoe lang uw reis zal duren. Maar met Excel kunnen we dat gemakkelijk doen. In dit artikel zullen we verschillende manieren demonstreren om de afstand tussen twee steden in Excel te berekenen.
Download Praktijk Werkboek
Je kunt het werkboek downloaden en ermee oefenen.
Afstand tussen twee steden berekenen.xlsmDataset Inleiding
Om de afstand tussen twee steden te berekenen, moeten we eerst de dataset voorbereiden. Stel dat we twee steden hebben Los Angeles wat een grote stad is in de staat Californië en Pasco dat is de stad van Washington Nu moeten we de afstand tussen hen vinden. Daarvoor moeten we de latitude en lengtegraad van beide steden. We kunnen eenvoudig de lengte- en breedtegraad van elke stad vinden met Excel. Laten we eens kijken hoe we dat kunnen doen.
STAPPEN:
- Selecteer eerst de cel waar we de naam van de steden zetten. In ons geval selecteren we de cellen B5 en B6 .
- Ten tweede, ga naar de Gegevens tabblad van het lint.
- Ten derde, in de Gegevenstypen categorie klik op Aardrijkskunde .
- Om vervolgens de breedtegraad te vinden, selecteert u de cel waar u de breedtegraad hebt ingevoerd en typt u daar de formule.
=B5.Latitude
- Druk op Ga naar om het resultaat te zien.
- Op dezelfde manier vinden we de breedtegraad van cel B6 .
- Om nu de lengtegraad te vinden, evenals de breedtegraad, selecteert u een cel en zet u de volgende formule in die cel.
=B5.Longitude
- Druk op de Ga naar toets op uw toetsenbord.
- Op dezelfde manier krijgen we de B6 door de eerdere stappen te volgen.
- Dat is het, nu hebben we de lengte- en breedtegraad van beide steden. Dus onze dataset is nu klaar voor gebruik.
5 Verschillende methoden om de afstand tussen twee steden te berekenen in Excel
Door de afstand tussen twee plaatsen te bepalen, kunnen we vervolgens de afstand tussen twee woningen bepalen. Aan de hand van deze informatie kunnen we schatten hoe lang het duurt om tussen twee woningen te reizen. Om de afstand tussen twee steden te vinden, gebruiken we de bovenstaande dataset die we zojuist hebben gemaakt.
1. Haversinusformule toepassen om afstand tussen twee steden te berekenen
Een van de fundamentele vergelijkingen voor oceaanonderzoek is de Haversine Formule , waarmee de afstand tussen twee plaatsen op een bolvormig vlak kan worden berekend op voorwaarde dat de breedte- en lengtegraad en de straal van de halve bol worden bepaald. GPS apparaten hebben het in wezen geautomatiseerd. Laten we de stappen volgen om de formule te gebruiken om de afstand tussen twee steden te berekenen.
STAPPEN:
- Om te beginnen selecteert u de cel waar u de afstand wilt krijgen, dus selecteren we cel C8 .
- Zet dan de Haversine Formule in die geselecteerde cel.
=3959*ASIN(SQRT((SIN(C6-C5)/2)^2+COS(C5)*COS(C6)*(SIN(D6-D5)/2)^2))
- Druk ten slotte op de Ga naar toets om het resultaat te zien.
- Dus door de formule te gebruiken krijgen we het resultaat 1367.581282 .
Lees meer: Hoe de rijafstand tussen twee adressen te berekenen in Excel
2. Afstand tussen twee steden berekenen met Excel ACOS, SIN, COS en RADIANS functies
De inverse cosinus van een waarde is wat de ACOS-functie De sinus van een hoek in radialen wordt teruggegeven door de SIN-functie van Excel De cosinus van een hoek in radialen wordt weergegeven door de COS-functie Radialen worden veranderd in graden met behulp van de Excel RADIANS functie We kunnen deze functies combineren om de afstand tussen twee steden te krijgen. Het is ook in principe geautomatiseerd met behulp van GPS apparaten. Laten we de combinatie van deze functies toepassen om de afstand tussen twee steden te bepalen door de stappen te doorlopen.
STAPPEN:
- Kies in de eerste plaats de cel waar u de afstand wilt verwerven; in dit geval kiezen we cel C8 .
- Daarna voegt u de combinatie van de formule van de functie in de gekozen cel in.
=ACOS(COS(RADIALEN(90-C5)) *COS(RADIALEN(90-C6)) +SIN(RADIALEN(90-C5)) *SIN(RADIALEN(90-C6)) *COS(RADIALEN(D5-D6))) *6371
- Om het resultaat te bekijken, drukt u op de Ga naar aan het einde.
- Door de formule toe te passen komen we dus op het getal 1357.033633 .
Lees meer: Hoe de afstand tussen twee GPS-coördinaten te berekenen in Excel
3. Combineer de functies CONCATENATE en SUBSTITUTE in Excel om de afstand tussen twee steden te berekenen.
Om twee of zelfs meer woordreeksen te combineren tot één zin, gebruikt u de tekstfunctie CONCATENATE . ongeveer dertig stukken tekst kunnen worden samengevoegd met behulp van de Excel CONCATENATE functie, die het resultaat als tekst teruggeeft. De functie SUBSTITUTE van excel gebruikt vergelijken om tekst in een gespecificeerde string te wijzigen. We kunnen deze twee functies combineren om een Google Kaart link om de afstand tussen twee adressen Laten we de formule gebruiken om de afstand tussen twee steden te bepalen door de stappen te doorlopen.
STAPPEN:
- Evenzo kiest u in de vorige methode de cel waar u de Google Kaart in dit geval kiezen we cel C8 .
- Voer dan de formule in die geselecteerde cel in.
=CONCATENATE("//maps.google.co.uk/maps?f=d&source=s_d&saddr=",
SUBSTITUTE(B5," ","+"),"&daddr=",SUBSTITUTE(B6," ","+"))
- Om de resultaten weer te geven, drukt u op de Ga naar sleutel.
Met behulp van deze formule kunt u linken naar een Google Kaart die de route toont van Los Angeles naar Pasco De steden worden aan de link toegevoegd met behulp van de CONCATENATE functie, en de namen van de steden worden toegevoegd met behulp van de SUBSTITUTE functie.
- Voer daarna deze link in het zoekvak van uw browser in om te zien hoe ver deze twee steden van elkaar verwijderd zijn.
De CONCATENATE en SUBSTITUTE functies kunnen in Excel ook worden gebruikt om de afstand tussen twee steden op de planeet te bepalen.
Lees meer: Hoe kilometers tussen twee adressen berekenen in Excel (2 methoden)
4. Maak de LAMBDA-functie om de afstand tussen twee steden te berekenen.
De LAMBDA-functie in Excel wordt gebruikt om aangepaste functies te bouwen die in een werkblad kunnen worden gebruikt en met bekende namen kunnen worden opgeroepen. Zodra deze functies zijn gedefinieerd en een naam hebben gekregen, kunnen we ze overal in onze werkmap gebruiken.
De belangrijkste vergelijking voor de afstand is:
D = acos (sinΦ
1
. sinΦ
2
+ cosΦ
1
. cosΦ
2
cos
Δλ)
. R
Ook al lijkt het een beetje overweldigend, de inputs die voor ons het belangrijkst zijn:
- De lengte- en breedtegraad van het vertrekpunt.
- De lengte- en breedtegraad van de uiteindelijke locatie.
Dus in de formule of de vergelijking.
- Δλ geeft het verschil aan tussen de lengtegraden ( lon_2-lon_1 ).
- Φ 1 en Φ 2 geven achtereenvolgens aan lat_1 en lat_2 .
- R geeft de straal van het oppervlak aan.
Laten we een LAMBDA functie om de afstand tussen twee steden te berekenen door de onderstaande stappen te volgen.
STAPPEN:
- Selecteer eerst de cel C8 .
- Zet verder de formule in die cel.
=LAMBDA(_lat1, _lon1, _lat2, _lon2, LET(lat_1, RADIALEN(_lat1),lon_1, RADIALEN(_lon1),lat_2, RADIALEN(_lat2),lon_2, RADIALEN(_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)
- Druk vervolgens op Ga naar .
- Dit toont het resultaat, maar de formule is te groot en het kan moeilijk te begrijpen zijn als je dit vele malen gebruikt.
- Dus, in plaats van dit te doen, kunnen we een aangepaste formule maken met behulp van de LAMBDA functie.
- Ga hiervoor naar de Formules tabblad van het lint.
- Onder de Gedefinieerde namen groep, klik op Naam Manager .
- Dit zal de Naam Manager dialoogvenster.
- Klik nu op de Nieuw menu.
- Dit brengt u naar de Nieuwe naam raam.
- Verder geven we de formule een naam, want we willen de afstand tussen twee steden berekenen, dus zetten we de naam van de formule CityDistance .
- Zet dan de volgende formule in het veld van Verwijst naar .
=LAMBDA(_lat1, _lon1, _lat2, _lon2, LET(lat_1, RADIALEN(_lat1),lon_1, RADIALEN(_lon1),lat_2, RADIALEN(_lat2),lon_2, RADIALEN(_lon2),r, 6378,ACOS((SIN(lat_1) * SIN(lat_2)) + (COS(lat_1) * COS(lat_2) * COS(lon_2-lon_1))) * r))
- Klik dan op OK .
- Dit brengt u naar de naam Manager dialoog opnieuw.
- Klik bovendien op de Sluit knop om het proces te voltooien.
- Nu vindt u een nieuwe aangepaste functie CityDistance En door de functie te gebruiken krijg je de afstand tussen twee steden.
- Door de formule toe te passen komen we dus op het getal 1358.524645 .
Lees meer: Hoe Levenshtein-afstand in Excel te berekenen (4 eenvoudige methodes)
5. Afstand tussen twee steden berekenen met Excel VBA
Het maken van een API ( Toepassing Programmeer Interface ) verbinding en het gebruiken om een Door de gebruiker gedefinieerde functie in VBA zijn twee andere manieren om de afstand tussen twee locaties te bepalen. Om gegevens voor een locatie te verzamelen, maakt Excel verbinding via API op elke kaart, inclusief Google Kaart en Bing Kaart Daarom moeten we, om deze techniek te kunnen gebruiken, eerst een API sleutel. Dat is echt eenvoudig, maar helaas, alleen Bing Kaart biedt een gratis API niet Google. We zullen dit demonstreren door gebruik te maken van de gratis Bing Kaart API sleutel. Klik hier om uw eigen Bing Map API sleutel .
STAPPEN:
- Om te beginnen hebben we een API toets en geplaatst op cel C8 .
- Ga nu naar de Ontwikkelaar tabblad van het lint.
- Dan, van de Code categorie, klik op Visual Basic om de Visual Basic-editor Of druk op Alt + F11 om de Visual Basic-editor .
- In plaats daarvan kunt u gewoon klik met de rechtermuisknop op op je werkblad en ga naar Code bekijken Dit brengt u ook naar Visual Basic-editor .
- Dit zal verschijnen in de Visual Basic-editor .
- Klik verder op Module van de Plaats uitklapmenu.
- Dit zal een Module in je werkboek.
- En kopieer en plak de VBA-code hieronder weergegeven.
VBA-code:
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
- Sla de code op door de hele werkmap op te slaan als een werkmap met microbeveiliging en de extensie wordt .xlsm .
- Dit creëert een door de gebruiker gedefinieerde functienaam CityDistance .
VBA-code uitleg
- We begonnen met het geven van onze Functie de naam CityDistance . Eerste stad Als String, Second City als String, en Doelwaarde As String werden ook als argumenten opgenomen.
- Toen verklaarden we Instelling HTTP als een object en Beginpunt , Eindpunt , Afstandseenheid en Uitvoer Url als Strings.
- Later hebben we de Afstandseenheid naar kilometer en Beginpunt naar het beginpunt van de Url link.
- Vervolgens stellen we de parameters in die nodig zijn om een verbinding tot stand te brengen tussen onze VBA-code en de API .
- Vervolgens hebben we onze Door de gebruiker gedefinieerde functie .
Conclusie
De bovenstaande methoden zullen u helpen bij Bereken de afstand tussen twee steden in Excel Hopelijk helpt dit u! Laat het ons weten in de commentaarsectie als u vragen, suggesties of feedback heeft. Of u kunt een blik werpen op onze andere artikelen in de ExcelWIKI.com blog!