VBATools

Przelicz odległości

by on Dec.14, 2014, under Excel, Oprogramowanie, Płatne

Przelicz_odleglosci_proDodatek za drobne:

Rozwiązanie to oblicza odległości pomiędzy dwoma adresami na podstawie Google Maps. Przez adres rozumie się jakikolwiek punt zaczepienia jakim może być: państwo+miasto, miasto+ulica, lokalna ulica+numer lokalu.

Warunkiem koniecznym jest posiadanie dostępu do internetu. W przypadku zablokowania przez Googla dostępu do odczytu wartości (co się zdarza coraz częściej), konieczne jest wykupienie subskrypcji API Googla na swoje zewnętrzne/stałe IP.  i uzyskanie klucza dostępowego.

Rozszerzone rozwiązanie posiada możliwość zastosowania wyznaczenia odległości dla wielu adresów (>2) podliczając sumy cząstkowe analizowanej trasy oraz daje możliwość skorzystania z funkcji UDF, która pobiera dane z arkusza i przekazuje je do analizy Google. Algorytm zwróci wynik najszybszej trasy (nie najkrótszej). Jeśli ci zależy na konkretnych trasach w tym przypadku należy wstawić między-adres.

Oto przykład zastosowania formuły zakresu ciągłego =odległość(B3:B7)

Oto przykład zastosowania formuły różnych 2ch komórkach =odległość2(B2;B7;PRAWDA)

Przelicz_odleglosci_pro_UDF

Formuły zadziałają po wcześniejszym wyświetleniu interfejsu i wprowadzeniu klucza API.

Dodatkowo w obu wersjach można wywołać stronę internetową domyślnej przeglądarki aby przyjrzeć się analizowanej trasie bliżej:

Przelicz_odleglosci_pro_mapa

Rozwiązanie, korzysta z kontrolki CC Listview. Przed podjęciem decyzji zakupu należy sprawdzić czy w danym systemie działa poprawnie ta kontrolka sugerując się tym zestawem plików testowych.

Wersja PRO2 posiada możliwość pokazywania międzyczasów oraz przekazania łącznej wartości na arkusz. Czas ten jest przejazdem nie uwzględniającym warunki drogowo-pogodowe. Wynika on z dopuszczalnej prędkości na wyznaczonych odcinkach. Oto przykład:

Przelicz_odleglosci_pro2

Pomimo udostępnienia w wersji PRO możliwości użycia formuł obliczających trasę cząstkową w wersji PRO3 wprowadzono opcjonalny eksport tych wartości do arkusza.

Przelicz_odleglosci_pro3

Wersja PRO posiada również możliwość obsługę klucza API dla klientów Googla posiadających zmienne IP.

Przelicz_odleglosci_pro4

Aktualizacja v4.1

p.s. – Chcesz obliczyć nadkruszą trasę, nic prostszego. Oblicz iloczyn kartezjański aby pobrać wszystkie odległości pomiędzy adresami.

Dodatek zgodny z Office >= 2010 (oraz 365) dla 32/64bit

Zainteresowani zakupem dodatku proszeni są o kontakt i zapoznanie się z warunkami licencji.

(c) Shon Oskar – www.VBATools.pl

Wszelkie prawa zastrzeżone. Żadna część ani całość tego artykułu nie może być powielana ani publikowana bez zgody autora.
:, , , , , , , , , , , ,

8 Comments for this entry

  • Karolina

    Dzień dobry,
    interesuje mnie Państwa rozwiązanie do przeliczania odległości. Chciałabym się upewnić czy to jest to czego szukam.
    Chciałabym stworzyć taką matrycę w xls- w kolumnie pionowej baza kodów pocztowych którą mam, w kolumnie poziomej- inna lista kodów pocztowych. Na przecięciu chce aby pojawiła sie liczba km miedzy poszczególnymi kodami. Nie wiem czy jasno napisalam. JEzeli tak to prosze o informacje, czy Panstwa rozwiazanie mi w tym pomoze.
    dziekuje.
    Karolina Foltyn

    • vbatools

      Odpisuje mailem jak podołać z tematem. Z pewnością zakup dostępu do API, a potem mogę przyjąć zamówienie na kod kartezjański państwa bazy kodów, aby pobrać wyniki do przerobienia tabelą przestawną.

  • Radosław

    W kolumnie A mam kilka tysięcy adresów nazwanych “START”. Kolumna B – “STOP”. Jest to zazwyczaj kod pocztowy i miasto. Jedyne co udało mi się zrobić to hiperłącze do google maps w celu odwzorowania trasy. Jednak w kolumnie C potrzebuję wyciągnąć “najszybsze”odległości które wyniknął z linku google maps.
    Czy to narzędzie mi pomoże?

    • vbatools

      Dzięki temu dodatku można zastosować formułę w komórce C2 np =odległość2(A2;B2;PRAWDA), która pobierze ilość km na najszybszej trasie w danym dniu. Api którego używa narzędzie musi być opłacone w Googlu a nr licencji wrzuca się do interfejsu rozwiązania. Po tym zabiegu można stosować formuły na dowolnym obszarze danych w komórkach arkusza, bądź używać interfejsu jak pokazano w pow. opisie.

  • rafał

    Jaki jest w chwili obecnej koszt opłat w GOOGLE
    ????

    • vbatools

      Pow. podany jest link do serwisu Google. Nie pośredniczymy w subskrypcji API, oraz nie oferujemy jej na warunkach naszej firmy.
      Proszę się skontaktować z nimi bezpośrednio. Nasz produkt nie jest objęty subskrypcją a jedynie ilość licencji definiuje ilość instalacji na posiadanych jednostkach.

  • Jacek

    Dzień dobry. Zastanawiam się czy mógłbym użyć wasz dodatek do obliczania zwrotu kosztu przejazdu.
    Muszę ustliś odległość z punktu miejscowości a do miejscowości b i na tej podstawie formularz wylicza zwrot .
    Do tej pory na podstawie google maps i wyliczania trasy tą wartość wpisuję ręcznie.Pytanie czy można byłoby wykorzystać do tych obliczeń i czy dodatek zadziała w wersji excel 2019?

    • vbatools

      To właśnie dodatek który łączy się z gogle maps i pobiera dane wg mapy drogowej. Aby działał należy stworzyć sobie konto i na początek ubiegać się o darmowy dostęp (potem jest płatny). Dodatkiem można pobierać dane wprost lub wpisując formułę pobierać dane do komórek. Mapa uwzględnia obecny stan dróg zatem jeśli np. droga jest zamknięta, to pokarze ilość km uwzględniający objazd, podobnie jest z czasem dojazdu.

Leave a Reply