Jak obliczyć odległość w Excelu za pomocą Google Maps

  • Udostępnij To
Hugh West

Excel ma szeroki zakres zastosowań, a podczas korzystania z VBA to wydaje się, że w Excelu możemy zrobić co tylko chcemy.Więc oczywiście możemy znaleźć odległość między miejscami za pomocą mapy w Excelu. W tym artykule pokażę szybki przewodnik do obliczania odległości w Excelu za pomocą Map Google z ostrymi krokami i wyraźnymi ilustracjami.

Pobierz Zeszyt ćwiczeń

Możesz pobrać stąd darmowy skoroszyt Excela i poćwiczyć samodzielnie.

Calculate-Distance-with-Google-Maps.xlsm

Używanie funkcji zdefiniowanej przez użytkownika do obliczania odległości w programie Excel z mapami Google

Tutaj, będziemy znaleźć odległość między MacArthur Park a Jersey City za pomocą Google Maps.

Najpierw musimy wiedzieć pewną ważną rzecz. Aby obliczyć odległość w Excelu przy użyciu Google Maps, będziemy potrzebowali m.in. API klucz. API oznacza Interfejs programowania aplikacji . Excel łączy się z Google Maps za pomocą klucza API w celu zebrania wymaganych danych. Niektóre mapy udostępniają darmowe klucze API, jak np. Bing Maps, ale Google Maps nie udostępnia darmowego API. Mimo, że zarządzasz darmowym API w jakiś sposób nie będzie to działać idealnie. Tak więc, będziesz musiał kupić API klucz z tego linku.

Tutaj, zarządzałem wolnym API Klucz. Nie działa poprawnie, tylko użyty do pokazania jako przykład. Użyjemy VBA utworzyć funkcja zdefiniowana przez użytkownika o nazwie Calculate_Distance do znaleźć odległość Będzie miał trzy argumenty. Miejsce startu , Miejsce przeznaczenia oraz Klucz API A teraz zacznijmy procedury.

Kroki:

  • Naciśnij ALT + F11 aby otworzyć Okno VBA .

  • Następnie należy kliknąć w następujący sposób: Insert> Moduł aby stworzyć nowy moduł.

  • Później wpisz w okienku następujące kody-.
 Public Function Calculate_Distance(start As String, dest As String, Alink As String) As Double Dim first_Value As String, second_Value As String, last_Value As String Dim mitHTTP As Object first_Value = "//maps.googleapis.com/maps/api/distancematrix/json?origins=" second_Value = "&destinations=" last_Value = "&mode=car&language=pl&sensor=false&key=" & Alink Set mitHTTP =.CreateObject("MSXML2.ServerXMLHTTP") Url = first_Value & Replace(start, " ", "+") & second_Value & Replace(dest, " ", "+") & last_Value mitHTTP.Open "GET", Url, False mitHTTP.SetRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)" mitHTTP.Send ("") If InStr(mitHTTP.ResponseText, """distance"" : {") = 0 Then GoTo ErrorHandl Set mit_reg =.CreateObject("VBScript.RegExp"): mit_reg.Pattern = """wartość"".*?([0-9]+)": mit_reg.Global = False Set mit_matches = mit_reg.Execute(mitHTTP.ResponseText) tmp_Value = Replace(mit_matches(0).Submit_matches(0), ".", Application.International(xlListSeparator)) Calculate_Distance = CDbl(tmp_Value) Exit Function ErrorHandl: Calculate_Distance = -1 End Function 
  • Potem nic, tylko wracać do swojego arkusza.

Podział kodu:

  • Najpierw użyłem procedury Public Function Calculate_Distance .
  • Następnie zadeklarowano kilka zmiennych first_Value, second_Value, and last_Value dla argumentów naszej funkcji zdefiniowanej przez użytkownika.
  • Ustawiamy wartości dla zmiennych (każda wartość jest samoopisowa), oraz ustawiamy mitHTTP obiekt w SerwerXMLHTTP aby wykorzystać GET (zastosowana później, ta właściwość obiektu pozwoli na użycie metody POST również metoda).
  • Url jest kombinacją wszystkich ustawionych wcześniej wartości, właściwości open mitHTTP obiekt używał go.
  • Po przypisaniu wartości funkcja biblioteczna wykonuje resztę obliczeń.

Teraz widzisz, że nasza funkcja jest gotowa do użycia.

  • W Komórka C8 , wpisz następujący wzór-.
=Oblicz_odległość(C4,C5,C6)

  • Na koniec wystarczy nacisnąć przycisk ENTER Aby uzyskać odległość, kliknij na przycisk. Jednostka miary .

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

Zalety i wady obliczania odległości za pomocą Google Maps

  • Musisz mieć ważny Klucz API .
  • Powyższy kod da dane wyjściowe w Jednostka miary .
  • Funkcja zdefiniowana przez użytkownika używa bezpośrednio nazw miejsc, nie trzeba używać współrzędnych.
  • Upewnij się, że użyłeś ważnego miejsca.

Zalety i wady obliczania odległości za pomocą Google Maps

Zalety

  • Dla dużej pary miejsc jest to całkiem wykonalne, ponieważ możemy użyć Uchwyt do napełniania Nie jest to możliwe w przypadku narzędzia do kopiowania formuły. Mapy Google
  • Jest to dość szybszy sposób.
  • Nie trzeba używać współrzędnych.

Wady

  • Nie może pracować ze współrzędnymi.
  • Nie dostaniesz mapy ani trasy, tylko dostaniesz odległość.
  • Nie będzie działać z przybliżonym dopasowaniem nazw miejscowości.

Wniosek

Mam nadzieję, że opisane powyżej procedury będą wystarczająco dobre, aby obliczyć odległość w Excelu za pomocą Google Maps. Zapraszam do zadawania wszelkich pytań w sekcji komentarzy i proszę o informację zwrotną.Wizyta ExcelWIKI 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ł.