Jak obliczyć odległość między dwoma miastami w Excelu

  • Udostępnij To
Hugh West

Istnieje kilka zastosowań dla Excel . Fajna specjalna funkcja i formuła w Microsoft Excel może określić odległość między dwoma konkretnymi miastami lub miejscami na planecie. Jest to kluczowe, aby być w stanie obliczyć odległość między dowolnymi dwoma miejscami na mapie. Pozwala to obliczyć rzeczywistą odległość i zapewni Ci przyzwoite oszacowanie, jak długo potrwa Twoja podróż. Ale z Excelem możemy to zrobić w prosty sposób. W tym artykule zademonstrujemy kilka sposobów na obliczenie odległości między dwoma miastami w Excelu.

Pobierz Zeszyt ćwiczeń

Możesz pobrać zeszyt ćwiczeń i ćwiczyć z nimi.

Obliczanie odległości między dwoma miastami.xlsm

Wprowadzenie do zbioru danych

Aby obliczyć odległość między dwoma miastami, najpierw musimy przygotować zbiór danych. Załóżmy, że mamy dwa miasta Los Angeles które jest głównym miastem w stanie Kalifornia oraz Pasco które jest miastem Washington Teraz musimy znaleźć odległość między nimi. W tym celu musimy znać szerokość geograficzna oraz długość geograficzna obu miast. Możemy po prostu znaleźć szerokość i długość geograficzną dowolnego miasta za pomocą Excela. Zobaczmy, jak możemy to zrobić.

KROKI:

  • Po pierwsze, wybierz komórkę, w której umieściliśmy nazwy miast. W naszym przypadku wybieramy komórki B5 oraz B6 .
  • Po drugie, przejdź do Dane zakładka ze wstążki.
  • Po trzecie, w Typy danych kategorii kliknij na Geografia .

  • Następnie, aby znaleźć szerokość geograficzną, wybierz komórkę, w której umieściłeś szerokość geograficzną i wpisz tam formułę.
=B5.Szerokość geograficzna

  • Naciśnij Wejdź na stronę aby zobaczyć wynik.

  • Podobnie znajdziemy szerokość geograficzną komórki B6 .
  • Teraz, aby znaleźć długość geograficzną, podobnie jak szerokość geograficzną, wybierz komórkę i wprowadź do niej następującą formułę.
=B5.Długość geograficzna

  • Uderz w Wejdź na stronę na klawiaturze.

  • Analogicznie otrzymujemy. B6 'długości geograficznej, wykonując wcześniejsze kroki.
  • To wszystko, teraz mamy szerokość i długość geograficzną obu miast. Tak więc, nasz zbiór danych jest teraz gotowy do użycia.

5 różnych metod obliczania odległości między dwoma miastami w Excelu

Znalezienie odległości między dwoma miejscami pozwoli nam następnie określić odległość między dwoma mieszkaniami. Możemy oszacować, jak długo zajmie nam podróż między domami, korzystając z tej informacji. Aby znaleźć odległość między dwoma miastami, używamy powyższego zestawu danych, który właśnie wykonaliśmy.

1) Zastosuj wzór Haversine do obliczenia odległości między dwoma miastami

Jednym z podstawowych równań dotyczących badań oceanicznych jest. Formuła Haversine , który może być użyty do obliczenia odległości między dwoma miejscami na płaszczyźnie sferycznej pod warunkiem, że określisz ich szerokość i długość geograficzną, a także promień półkuli. GPS urządzenia zasadniczo go zautomatyzowały. Prześledźmy kroki, aby użyć formuły do obliczenia odległości między dwoma miastami.

KROKI:

  • Na początek wybieramy komórkę, w której chcemy uzyskać odległość, czyli wybieramy komórkę C8 .
  • Następnie należy umieścić Formuła Haversine do tej wybranej komórki.
=3959*ASIN(SQRT((SIN(C6-C5)/2)^2+COS(C5)*COS(C6)*(SIN(D6-D5)/2)^2))

  • Na koniec naciśnij przycisk Wejdź na stronę aby zobaczyć wynik.

  • Korzystając ze wzoru otrzymujemy więc wynik 1367.581282 .

Read More: Jak obliczyć odległość między dwoma adresami w Excelu

2. obliczanie odległości między dwoma miastami za pomocą funkcji ACOS, SIN, COS i RADIANS w Excelu

Odwrotność cosinusa wartości jest tym, czym funkcja ACOS Sinus kąta w radianach jest zwracany przez funkcja SIN programu Excel cosinus kąta w radianach jest zwracany przez funkcja COS Radiany zamieniamy na stopnie za pomocą funkcja RADIANS w Excelu Możemy połączyć te funkcje, aby uzyskać odległość między dwoma miastami. Zostało to również w zasadzie zautomatyzowane przy użyciu GPS urządzenia. Zastosujmy kombinację tych funkcji, aby uzyskać odległość między dwoma miastami, przechodząc przez kolejne kroki.

KROKI:

  • W pierwszej kolejności należy wybrać komórkę, w której chcemy nabyć dystans; w tym przypadku wybieramy komórkę C8 .
  • Następnie wstawiamy kombinację formuły funkcji do wybranej komórki.
=ACOS(COS(RADIAN(90-C5)) *COS(RADIAN(90-C6)) +SIN(RADIAN(90-C5)) *SIN(RADIAN(90-C6)) *COS(RADIAN(D5-D6))) *6371

  • Aby zobaczyć wynik, naciśnij przycisk Wejdź na stronę klucz na samym końcu.

  • W ten sposób, stosując wzór, otrzymujemy liczbę 1357.033633 .

Read More: Jak obliczyć odległość między dwoma współrzędnymi GPS w Excelu

3. połączenie funkcji CONCATENATE i SUBSTITUTE w Excelu w celu uzyskania odległości między dwoma miastami

Aby połączyć dwa lub nawet więcej ciągów słów w jedno wyrażenie, użyj funkcja tekstowa CONCATENATE . ok. trzydzieści fragmenty tekstu można łączyć za pomocą programu Excel CONCATENATE funkcja, która zwraca wynik w postaci tekstu. Funkcja SUBSTITUTE excel używa porównywania do modyfikacji tekstu w określonym łańcuchu. możemy połączyć te dwie funkcje, aby stworzyć Google Map link, aby znaleźć odległość między dwoma adresami wykorzystując. wykorzystajmy wzór na otrzymanie odległości między dwoma miastami, przechodząc przez kolejne kroki.

KROKI:

  • Podobnie w poprzedniej metodzie wybierz komórkę, w której chcesz pozyskać Google Map ; w tym przypadku wybieramy komórkę C8 .
  • Następnie wprowadź formułę do tej wybranej komórki.

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

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

  • Aby wyświetlić wyniki, naciśnij przycisk Wejdź na stronę klucz.

Za pomocą tej formuły możesz połączyć się z Google Map który pokazuje trasę z Los Angeles do Pasco Miasta zostaną dodane do linku za pomocą CONCATENATE a nazwy miast zostaną dodane za pomocą funkcji SUBSTYTUT funkcja.

  • Następnie wpisz ten link w pole wyszukiwarki swojej przeglądarki, aby dowiedzieć się jak daleko od siebie znajdują się te dwa miasta.

Na stronie CONCATENATE oraz SUBSTYTUT funkcje mogą być również używane w Excelu do określenia odległości między dwoma miastami na planecie.

Read More: Jak obliczyć odległość między dwoma adresami w programie Excel (2 metody)

4. utwórz funkcję LAMBDA do obliczenia odległości między dwoma miastami

Funkcja LAMBDA w Excelu służy do tworzenia niestandardowych funkcji, które mogą być wykorzystywane w całym arkuszu i dostępne pod znanymi nazwami. Po zdefiniowaniu i nadaniu nazwy możemy używać tych funkcji w dowolnym miejscu naszego skoroszytu.

Główne równanie na odległość to:

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

Nawet jeśli mogłoby się to wydawać nieco przytłaczające, to wejścia, które mają dla nas największe znaczenie:

  • Szerokość i długość geograficzna punktu początkowego.
  • Szerokość i długość geograficzna ostatecznej lokalizacji.

Czyli w formule lub równaniu.

  • Δλ oznacza różnicę między długościami geograficznymi ( lon_2-lon_1 ).
  • Φ 1 oraz Φ 2 kolejno wskazywać lat_1 oraz lat_2 .
  • R oznacza promień powierzchni.

Stwórzmy LAMBDA funkcja do obliczania odległości między dwoma miastami, wykonując kroki w dół.

KROKI:

  • Najpierw wybierz komórkę C8 .
  • Dalej, w tej komórce umieść formułę.
=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)

  • Następnie naciśnij Wejdź na stronę .

  • To pokaże wynik, ale formuła jest zbyt duża i może być trudna do zrozumienia podczas używania tego wiele razy.
  • Tak więc, zamiast tego, możemy stworzyć niestandardową formułę używając LAMBDA funkcja.
  • W tym celu należy udać się do Formuły zakładka ze wstążki.
  • Na mocy Nazwy zdefiniowane grupy, kliknij na Nazwa Kierownik .

  • Spowoduje to wyświetlenie Nazwa Kierownik okno dialogowe.
  • Teraz kliknij na Nowy menu.

  • To przeniesie Cię do Nowa nazwa okno.
  • Dalej należy nazwać formułę, ponieważ chcemy obliczyć odległość między dwoma miastami, więc umieszczamy nazwę formuły CityDistance .
  • Następnie wpisz w pole Dotyczy .

=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))) * r))

  • Następnie należy kliknąć OK .

  • To przeniesie Cię do nazwa Kierownik ponownie dialog.
  • Ponadto należy kliknąć na Zamknij aby zakończyć proces.

  • Teraz możesz znaleźć nową funkcję niestandardową CityDistance A korzystając z funkcji otrzymasz odległość między dwoma miastami.

  • W ten sposób, stosując wzór, otrzymujemy liczbę 1358.524645 .

Read More: Jak obliczyć odległość Levenshteina w Excelu (4 proste metody)

5) Obliczanie odległości między dwoma miastami za pomocą programu Excel VBA

Dokonywanie API ( Interfejs programowania aplikacji ) i wykorzystanie go do zbudowania Funkcja zdefiniowana przez użytkownika w VBA to dwa inne sposoby na określenie odległości między dwoma lokalizacjami. Aby zebrać dane o lokalizacji, Excel łączy się przez API do każdej mapy, m.in. Google Map oraz Bing Map Dlatego, aby skorzystać z tej techniki, musimy najpierw ustalić API To naprawdę proste, ale niestety, tylko Bing Map oferuje bezpłatny API a nie Google. Pokażemy ten sposób, wykorzystując darmowy Bing Map API klucz. Kliknij tutaj aby stworzyć swój własny Klucz API mapy Bing .

KROKI:

  • Na początek utworzyliśmy API i umieścił go w komórce C8 .

  • Teraz przejdź do Deweloper zakładka ze wstążki.
  • Następnie, z Kod kategorii, kliknij na Visual Basic aby otworzyć Edytor Visual Basic . lub naciśnij Alt + F11 aby otworzyć Edytor Visual Basic .

  • Zamiast tego możesz po prostu kliknij prawym przyciskiem myszy na stronie na swoim arkuszu i przejdź do Wyświetl kod To przeniesie cię również do Edytor Visual Basic .

  • Pojawi się to w Edytor Visual Basic .
  • Następnie należy kliknąć na Moduł od Wkładka pasek menu rozwijanego.

  • To stworzy Moduł w swoim zeszycie.
  • I, skopiuj i wklej Kod VBA pokazane poniżej.

VBA Kod:

 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" 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 
  • Zapisz kod, zapisując cały skoroszyt jako skoroszyt z mikropłatnościami, a rozszerzenie będzie .xlsm .

  • Spowoduje to utworzenie nazwy funkcji zdefiniowanej przez użytkownika CityDistance .

Objaśnienie kodu VBA

  • Zaczęliśmy od przekazania naszej Funkcja nazwa CityDistance . First City As String, Drugie Miasto As String, oraz Wartość docelowa Jako argumenty uwzględniono również As String.
  • Następnie oświadczyliśmy. Konfiguracja HTTP jako obiekt i Punkt początkowy , Punkt końcowy , Odległość Jednostka oraz Output Url jako struny.
  • Później zmieniliśmy Odległość Jednostka do kilometr oraz Punkt początkowy do punktu początkowego Url link.
  • Następnie ustawiamy parametry wymagane do nawiązania połączenia pomiędzy naszymi Kod VBA i API .
  • Następnie stworzyliśmy nasz Funkcja zdefiniowana przez użytkownika .

Wniosek

Powyższe metody pomogą Ci w Obliczanie odległości między dwoma miastami w Excelu Mamy nadzieję, że to pomoże! Daj nam znać w sekcji komentarzy, jeśli masz jakieś pytania, sugestie lub opinie. Możesz też rzucić okiem na nasze inne artykuły w ExcelWIKI.com blog!

Hugh West jest bardzo doświadczonym trenerem i analitykiem Excela z ponad 10-letnim doświadczeniem w branży. Posiada tytuł licencjata w dziedzinie rachunkowości i finansów oraz tytuł magistra administracji biznesowej. Hugh ma pasję do nauczania i opracował unikalne podejście do nauczania, które jest łatwe do naśladowania i zrozumienia. Jego specjalistyczna wiedza na temat programu Excel pomogła tysiącom studentów i profesjonalistów na całym świecie doskonalić swoje umiejętności i osiągać doskonałe wyniki w karierze. Za pośrednictwem swojego bloga Hugh dzieli się swoją wiedzą ze światem, oferując bezpłatne samouczki programu Excel i szkolenia online, aby pomóc osobom indywidualnym i firmom w pełni wykorzystać swój potencjał.