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

  • Udostępnij To
Hugh West

Microsoft Excel jest bardzo wszechstronnym programem arkusza kalkulacyjnego.Oferuje on wykonywanie tak szerokiego zakresu zadań, że nie można sobie nawet wyobrazić.W programie Excel można nawet obliczyć odległość jazdy między dwoma adresami.Jeśli masz listę adresów, aby znaleźć różnicę między nimi, można oczywiście użyć MS Excel.Można również obliczyć odległość ręcznie.Ale to będzie zbyt czasochłonne.Jak maszsetki tysięcy odległości do obliczenia. Dlatego w tym artykule pokażę Ci, jak obliczyć odległość jazdy między dwoma adresami w Excelu.

Pobierz Zeszyt ćwiczeń

Możesz pobrać plik Excel z poniższego linku i ćwiczyć razem z nim.

Compute Driving Distance Between Two Addresses.xlsm

2 Skuteczne sposoby obliczania odległości między dwoma adresami w programie Excel

1) Wykorzystanie funkcji trygonometrycznych do obliczania odległości jazdy

Tutaj pokażę Ci, jak połączyć różne funkcje trygonometryczne aby obliczyć odległość jazdy między dwoma adresami w programie Excel.

Aby dać ci przykład, wziąłem dwa adresy. Pierwszy adres to MacArthur Park, Camden NSW, Australia Jej szerokość i długość geograficzna to 34.06312149 oraz -118.2783975 Drugi adres to odpowiednio. Jersey City, New Jersey, USA Jej szerokość i długość geograficzna to 40.71799929 oraz -74.04276812 odpowiednio.

Teraz, połączę ACOS , COS , SIN , & RADIANS Formuła ta będzie efektywnie obliczać odległość jazdy między dwoma adresami w milach.

Na to,

❶ Wybierz komórkę D8 po pierwsze.

❷ Następnie wstaw do komórki następującą formułę.

=ACOS(COS(RADIAN(90-C6)) *COS(RADIAN(90-C5)) +SIN(RADIAN(90-C6)) *SIN(RADIAN(90-C5)) * COS(RADIAN(D6-D5))) *3959

❸ Następnie naciśnij przycisk ENTER przycisk.

Teraz zobaczysz, że formuła obliczyła odległość jazdy pomiędzy MacArthur Park, Camden NSW, Australia, oraz Jersey City, New Jersey, USA w milach. Tak więc, zobaczysz wynik w komórce D8 który jest 2445.270922 mil.

Podział formuły

  • COS(RADIAN(90-C6)) *COS(RADIAN(90-C5)) - ten RADIANS funkcje przeliczają wartości na radiany, a COS Funkcja podaje cosinus wartości, cosinusy dla szerokości geograficznej są wtedy mnożone. Wyjście - 0.365377540842758
  • COS(RADIAN(D6-D5)) - podaje wartość cosinusa dla różnicy długości geograficznej pomiędzy dwoma adresami. Wyjście - 0.716476936499882
  • SIN(RADIAN(90-C6)) *SIN(RADIAN(90-C5)) - oblicza odchylenie długości geograficznych od 90 radianów i mnoży wartości sinusów. Wyjście - 0.627884682513118
  • SIN(RADIAN(90-C6)) *SIN(RADIAN(90-C5)) *COS(RADIAN(D6-D5)) - staje się 0,627884682513118 * 0,716476936499882. Wyjście - 0.449864893802199
  • COS(RADIAN(90-C6)) *COS(RADIAN(90-C5)) +SIN(RADIAN(90-C6)) *SIN(RADIAN(90-C5)) *COS(RADIAN(D6-D5)) - staje się 0,365377540842758 * 0,449864893802199. Wyjście - 0.815242434644958
  • Następnie. ACOS funkcja arkosynchronizacja wartości. Wyjście - 0.617648629071256
  • Na koniec, mnożąc wartość przez 3959 - 0.617648629071256 *3959 podaje wynik w milach. Wyjście - 2445.270922

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

2) Obliczanie odległości między dwoma adresami za pomocą kodu VBA

W tej sekcji użyję VBA Kod do utworzenia funkcji zdefiniowanej przez użytkownika, którą następnie wykorzystam do obliczenia odległości między dwoma adresami w Excelu.

Tutaj używam dwóch adresów. Pierwszy adres to MacArthur Park, Camden NSW, Australia Jej szerokość i długość geograficzna to 34.06312149 oraz -118.2783975 Drugi adres to odpowiednio. Jersey City, New Jersey, USA Jej szerokość i długość geograficzna to 40.71799929 oraz -74.04276812 odpowiednio.

Na I wygeneruje współrzędne dla każdego z adresów Współrzędna to połączenie szerokości i długości geograficznej Aby wygenerować współrzędną,

  • Najpierw wpisz szerokość geograficzną adresu.
  • Następnie wstaw przecinek.
  • Następnie wpisz długość geograficzną tego samego adresu.

Zatem współrzędna pierwszego adresu to. 34.0631214903094,-118.27839753751 A współrzędna drugiego adresu to. 40.7179992930381,-74.0427681204225 .

Na stronie VBA kodeks wymaga API mapy, aby obliczyć odległość jazdy. API Skrót od Application Programming Interface (interfejs programowania aplikacji). API aby podłączyć Google Map lub Bing Map co kto woli.

Ale tworzenie Google Map API jest płatny. Wręcz przeciwnie, możesz stworzyć API z Bing MAP za darmo.

W związku z tym, używam Bing MAP API tutaj.

  • Aby stworzyć darmowy Bing MAP API , kliknij tutaj .

Stworzyłem API . I'm attaching the API poniżej:

AhFG0hk5nKCcQlk80MRaSk1ZtoYUYsX98BCLWi7p7MKZ-VrzOWptdUwsvj9D3L9F

Teraz nadszedł czas, aby napisać VBA Kod. Na to,

  • Naciśnij ALT + F11 aby otworzyć Edytor VBA .
  • Teraz przejdź do Wkładka Moduł aby otworzyć nowy moduł.

Po otwarciu Edytor VBA dodaje się, co następuje VBA kod w otwartym module.

 Option Explicit Public Function Driving_Distance(startlocation As String, destination As String, keyvalue As String) Dim First_Value As String, Second_Value As String, Last_Value As String, mitHTTP As Object, mitUrl As String First_Value = "//dev.virtualearth.net/REST/v1/Routes/DistanceMatrix?origins=" Second_Value = "&destinations=" Last_Value = "&travelMode=driving&o=xml&key="& keyvalue & "&distanceUnit=mi" Set mitHTTP = CreateObject("MSXML2.ServerXMLHTTP") mitUrl = First_Value & startlocation & Second_Value & destination & Last_Value mitHTTP.Open "GET", mitUrl, False mitHTTP.SetRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)" mitHTTP.Send ("") Driving_Distance =.Round(Round(WorksheetFunction.FilterXML(mitHTTP.ResponseText, "//TravelDistance"), 3), 0) End Function 

Podział kodu

  • Tutaj utworzyłem funkcję zdefiniowaną przez użytkownika o nazwie Driving_Distance.
  • Następnie użyłem 3 parametrów: startlocation , miejsce przeznaczenia oraz keyvalue. Są to: pozycja dwóch adresów i API odpowiednio wartość.
  • Następnie użyłem kilku zmiennych np. First_Value , Second_Value , Ostatnia_wartość , mitHTTP , & mitUrl. Zmienne te służą do przechowywania różnych wartości.
  • Następnie połączono wartości (przechowywane w ramach mitUrl ) oraz wykorzystał kilka metod obiektowych (. Otwórz , SetRequestHeader , Wyślij ).W ten sposób udało mi się obliczyć odległość jazdy przez API .

Ten VBA kod generuje funkcję zdefiniowaną przez użytkownika o nazwie Odległość jazdy .

Funkcja Odległość jazdy wymaga 3 argumenty w sumie.

Oto ogólna składnia programu Odległość jazdy funkcja.

=Driving_Distance(Start_Location_Coordinate,End_Location_Coordinate, API)

Teraz czas na zastosowanie funkcji zdefiniowanej przez użytkownika, w tym celu,

  • Wybierz komórkę E10 .
  • Następnie wstawić następujący wzór:
=Driving_Distance(E5,E6,C8)

  • Teraz naciśnij ENTER .

Podział formuły

  • E5 to Start_Location_Coordinate .
  • E6 to Koniec_Lokalizacji_Współrzędna .
  • C8 to API z Bing MAP .

Funkcja oblicza odległość jazdy między dwoma adresami w milach.Sprawdź komórkę E10 . Zobaczy numer, 2790 .

Więc odległość jazdy między MacArthur Park, Camden NSW, Australia, oraz Jersey City, New Jersey, USA jest 2790 mil.

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

Część ćwiczeniowa

Otrzymasz arkusz Excela, taki jak poniższy zrzut ekranu, na końcu dostarczonego pliku Excel, gdzie możesz przećwiczyć wszystkie metody omówione w tym artykule.

Wniosek

Podsumowując, omówiłem 2 sposoby obliczania odległości jazdy między dwoma adresami w Excelu. I nie wahaj się zadawać żadnych pytań w sekcji komentarzy poniżej. Postaramy się odpowiedzieć na wszystkie istotne zapytania asap. I proszę odwiedzić naszą stronę internetową Exceldemy aby dowiedzieć się więcej.

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ł.