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

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 wersji Pro, korzysta z kontrolki CC Listview.

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.
:, , , , , , , , , , , ,

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

Leave a Reply