Як розрахувати відстань в Excel за допомогою Google Maps

  • Поділитися Цим
Hugh West

Excel має широкий спектр застосування. І під час використання VBA то здається, що в Excel ми можемо робити все, що завгодно. Так, звичайно, ми можемо знайти відстань між місцями За допомогою карти в Excel. У цій статті я покажу коротку інструкцію по розрахунку відстані в Excel за допомогою Google Maps з чіткими кроками і зрозумілими ілюстраціями.

Завантажити Практичний посібник

Ви можете завантажити безкоштовну робочу книгу Excel звідси і потренуватися самостійно.

Розрахувати-відстань-з-Google-Maps.xlsm

Використання користувацької функції для розрахунку відстані в Excel з картами Google Maps

Ось, ми будемо знайти відстань між парком Макартура та Джерсі-Сіті за допомогою Google Maps.

Для початку потрібно знати важливу річ. Щоб розрахувати відстань в Excel за допомогою Google Maps, нам знадобиться API ключ. API розшифровується як Інтерфейс прикладного програмування . Excel з'єднується з Google Maps за допомогою ключа API для збору необхідних даних. деякі карти надають безкоштовні ключі API, такі як Bing Maps. але Google Maps не надає безкоштовного API. хоча ви якось керуєте безкоштовним API, це не буде працювати ідеально. отже, вам доведеться придбати API ключ за цим посиланням.

Тут я встиг пройти безкоштовну API Він не працює належним чином, просто використовується для прикладу. Ми будемо використовувати VBA для створення призначена для користувача функція названий Обчислити_відстань до знайти відстань У нього буде три аргументи - Місце старту , Пункт призначення і Ключ API Тепер давайте приступимо до процедур.

Сходинки:

  • Преса ALT + F11 для відкриття Вікно VBA .

  • Далі необхідно натиснути наступну кнопку: Вставка> Модуль створити новий модуль.

  • Далі введіть у вікні наступні коди
 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 (сумісний; MSIE 6.0; Windows NT 5.0)" mitHTTP.Send ("") If InStr(mitHTTP.ResponseText, """" distance "" "" : {"] = 0 Then GoTo ErrorHandle Set mit_reg =CreateObject("VBScript.RegExp"): mit_reg.Pattern = """value"".*?([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 ErrorHandle: Calculate_Distance = -1 End Function 
  • Тоді нічого, просто поверніться до свого простирадла.

Розбивка коду:

  • По-перше, я скористалася процедурою "Публічна функція Обчислити_відстань .
  • Потім оголошуються деякі змінні перше_Значення, друге_Значення та останнє_Значення для аргументів нашої користувацької функції.
  • Встановіть значення для змінних (кожне значення є самоописовим), а також встановіть mitHTTP об'єкт в ServerXMLHTTP для використання GET метод (використовується пізніше, ця властивість об'єкту дозволить використовувати метод ПОСТ метод також).
  • Url це комбінація всіх встановлених раніше значень, відкрита властивість mitHTTP об'єкт використовував його.
  • Після присвоєння значень бібліотечна функція виконує решту обчислень.

Тепер ви бачите, що наша функція готова до використання.

  • В Комірка С8 введіть наступну формулу-
= Обчислити_відстань(C4,C5,C6)

  • Нарешті, просто натисніть кнопку ENTER щоб отримати відстань. Вона буде показана в одиницях Прилад обліку .

Читати далі: Як розрахувати відстань між двома адресами в Excel

Плюси та мінуси розрахунку відстані за допомогою Google Maps

  • Ви повинні мати дійсний Ключ API .
  • Вищенаведений код дасть вивід у рядку Блок лічильника .
  • Визначена користувачем функція використовує безпосередньо географічні назви, немає необхідності використовувати координати.
  • Переконайтеся, що ви скористалися дійсним місцем.

Переваги та недоліки розрахунку відстані за допомогою Google Maps

Переваги

  • Для великої пари місць це цілком реально, тому що ми можемо використовувати Ручка наповнення Це неможливо зробити в програмі для копіювання формули. Google Maps
  • Це досить швидкий шлях.
  • Координати використовувати не потрібно.

Недоліки

  • Він не може працювати з координатами.
  • Ви не отримаєте карту чи маршрут, а лише відстань.
  • Приблизний збіг географічних назв не спрацює.

Висновок

Сподіваюся, описані вище процедури будуть достатньо хороші для розрахунку відстані в Excel з Google Maps. Не соромтеся задавати будь-які питання в розділі коментарів і, будь ласка, дайте мені зворотний зв'язок. Відвідайте ExcelWIKI щоб дослідити більше.

Г’ю Вест — досвідчений тренер і аналітик Excel із понад 10-річним досвідом роботи в галузі. Він має ступінь бакалавра з бухгалтерського обліку та фінансів і ступінь магістра з ділового адміністрування. Г’ю має пристрасть до викладання та розробив унікальний підхід до викладання, який легко зрозуміти та дотримуватися. Його експертне знання Excel допомогло тисячам студентів і професіоналів у всьому світі вдосконалити свої навички та досягти успіху в кар’єрі. У своєму блозі Г’ю ділиться своїми знаннями зі світом, пропонуючи безкоштовні навчальні посібники з Excel та онлайн-навчання, щоб допомогти окремим особам і компаніям повністю розкрити свій потенціал.