Зміст
У статті ви дізнаєтеся, як розрахувати відстань між двома адресами в Excel. Microsoft Excel має цю класну спеціальну функцію і формулу для знаходження відстані між двома точками світу. Якщо у вас є GPS координати двох місць, ви можете легко визначити відстань між цими місцями в будь-якому підрозділі за вашим бажанням.
Завантажити Практичний посібник
Обчислення відстані між двома адресами.xlsm
3 способи обчислення відстані між двома адресами в Excel
У нашому наборі даних ми маємо Широта і Довгота для Огайо і Аляска Ми збираємося виміряти відстань між ними.
На сьогоднішній день, на жаль, це не так. Широти для Огайо і Аляска це 40.4173 Північ і 64.2008 Північ Крім того, угода про асоціацію між Україною та ЄС, яка була підписана в листопаді Довготи для Огайо і Аляска це 82.9071 Західна і 149.4937 Західна відповідно.
1. використання формули гаверсіну для обчислення відстані між двома адресами
Якщо ви добре знаєте математику, використовуючи Формула Хаверсіна Хоч він і дасть вам приблизний результат, але досить непоганий.
Перш за все, нам необхідно знати основна формула довжини дуги І за цією формулою ми порівнюємо її з відстанню між двома точками на Землі. Формула наведена нижче.
S = rθ
S = відстань між двома адресами
r = радіус Землі
θ = Кут, введений в центр Землі двома адресами
Але якщо у вас є GPS координати з двох місць, потрібно визначити з Формула Хаверсіна Подивіться на Формула Хаверсіна як показано нижче.
Якщо порівняти це з показниками формула довжини дуги Вийде, як на наступному зображенні.
Дозвольте ознайомити вас з параметрами Формула Хаверсіна .
φ 1 = широта першого місця
φ 2 = широта другого місця
ℽ 1 = довгота першого місця
ℽ 2 = широта другого місця
Зараз я покажу вам, як крок за кроком застосувати цю формулу в Excel.
Сходинки:
- Спочатку створимо комірку для зберігання значення відстані і введемо в комірку наступну формулу C8 .
=2*6400*ASIN(SQRT((SIN(C6-C5)/2)^2+COS(C5)*COS(C6)*(SIN(D6-D5)/2)^2))
У формулі використовуються ASIN , SQRT , ГРИХ і COS функції Це досить просто, якщо ви просто подивитеся на Формула Хаверсіна Вимірюємо відстань в кілометрів Отже, радіус Землі в кілометрах, який дорівнює 6400 км . ASIN відноситься до зворотний синус або ArcSine Якщо порівняти параметри кутів нахилу Формула Хаверсіна з нашою формулою Excel, отримуємо,
1 = широта штату Огайо (C5)
2 = широта Аляски (C6)
ℽ 1 = довгота штату Огайо (D5)
ℽ 2 = широта Аляски (D6)
- Після цього натисніть кнопку ENTER щоб побачити відстань між Огайо і Аляска в Кілометри .
- В подальшому, за бажанням, ви можете вимірювати відстань у милях використовуйте наступну формулу в комірці C8 .
=2*3959*ASIN(SQRT((SIN(C6-C5)/2)^2+COS(C5)*COS(C6)*(SIN(D6-D5)/2)^2))
Тут ми використали ту саму формулу Excel, що й для знаходження відстані в милі З цієї причини ми беремо радіус Землі в милі а саме 3959 .
Таким чином можна розрахувати відстань між двома адресами землі в Excel, застосувавши функцію Формула Хаверсіна .
Читати далі: Як обчислити відстань між двома координатами в Excel (2 способи)
2. застосування функцій СРЗНАЧ для обчислення відстані між двома адресами в Excel
Ви можете створити Google Map посилання, за яким можна знайти відстань між двома адресами за допомогою Excel КОНКАТЕНАТ і ЗАМІНИТИ Функції Давайте розглянемо цей процес нижче.
Сходинки:
- Спочатку введіть наступну формулу C8 .
=CONCATENATE("//maps.google.co.uk/maps?f=d&source=s_d&saddr=",
SUBSTITUTE(B5," ", "+"),"&daddr=",SUBSTITUTE(B6," ", "+"))
Ця формула створить Google Map посилання, звідки можна доїхати Огайо до Аляска "У нас тут є КОНКАТЕНАТ функція додасть функцію адреси за посиланням та ЗАМІНИТИ функція помістить ім'я файлу адреси .
- Далі необхідно натиснути кнопку ENTER і ви побачите кнопку Google Map посилання в C8 .
- Після цього використовуйте це посилання в рядку пошуку в Інтернеті, і ви отримаєте відстань інформація про ці дві адреси .
Нарешті, ви можете розрахувати відстань між двома адресами землі в Excel, застосувавши КОНКАТЕНАТ і ЗАМІНИТИ функції.
Читати далі: Як розрахувати відстань між двома містами в Excel
3 Використання VBA для обчислення відстані між двома адресами в Excel
Інший спосіб розрахунку відстань між двома адресами можна здійснити, зробивши API ( Інтерфейс прикладного програмування ) посилання та використання його для створення Функція, що визначається користувачем по VBA Ви можете зробити API посилання в Bing безкоштовно. Створити Bing Map Власний ключ API, натисніть тут .
Сходинки:
- По-перше, перейдіть за посиланням Розробник ">>; Visual Basic .
- Після цього оберіть Вставка ">>; Модуль для відкриття Модуль VBA .
- Після цього введіть наступний код у поле Модуль VBA Ми створюємо Функція, що визначається користувачем розрахувати відстань в милі .
Option Explicit Public Function DistanceInMiles(First_Location As String, _ Final_Location As String, Target_Value As String) Dim Initial_Point As String, Ending_Point As String, _ Distance_Unit As String, Setup_HTTP As Object, Output_URL As String Initial_Point = "//dev.virtualearth.net/REST/v1/Routes/DistanceMatrix?origins=" Ending_Point = "&destinations=" Distance_Unit ="&travelMode=driving&o=xml&key=" &Target_Value& "&distanceUnit=mi" Set Setup_HTTP = CreateObject("MSXML2.ServerXMLHTTP") Output_Url = Initial_Point & First_Location & Ending_Point & Final_Location & Distance_Unit Setup_HTTP.Open "GET", Output_Url, False Setup_HTTP.SetRequestHeader "User-Agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)"Setup_HTTP.Send ("") DistanceInMiles = Round(Round(WorksheetFunction.FilterXML(Setup_HTTP.ResponseText, _ "//TravelDistance"), 3), 0) End Function
Пояснення коду
- По-перше, ми назвали нашу Функція як Відстань в милях Ми також вставили 3 параметрів: First_Location As String, Final_Location As String і Target_Value As String .
- Після цього ми заявили Початковий_пункт , Кінцева_точка , Відстань_Одиниця і Outout_Url як Рядок ; Налаштування_HTTP як Об'єкт .
- Пізніше ми встановили Початковий_пункт в якості початку роботи над проектом Посилання на сайт , Кінцева_точка як Пункт призначення і Відстань_Одиниця до Майлз .
- Після цього ми встановлюємо необхідні параметри для створення зв'язку між нашими VBA кодекс, а також API
- Нарешті, ми створили нашу Функція, що визначається користувачем .
- Після цього, дотримуючись тих же процедур, ми зробили ще одну Функція, що визначається користувачем для знаходження відстані в кілометрів .
Ви бачите, що ми щойно змінили Відстань_Одиниця до кілометрів .
- Після цього, на наступному малюнку, ви можете побачити API ключ в комірці C8 .
- Після цього введіть в комірку наступну формулу C8 .
=Відстань в милях(E5,E6,C8)
- Далі необхідно натиснути кнопку ENTER і ви побачите кнопку відстань між Огайо і Аляска в милі .
- Після цього за допомогою наступної формули можна побачити відстань в кілометр .
=ВідстаньвКМ(E5,E6,C8)
Таким чином, можна розрахувати відстань між двома адресами за допомогою VBA і API ключ.
Читати далі: Як розрахувати відстань між двома адресами в Excel
Важливі моменти для запам'ятовування
- Маючи це на увазі, потрібно поставити приблизно правильні GPS координати з них держави в даних, тому що ви використовуєте Інтернет, щоб знайти відстань. держави це захід до Meridian Line і їхні обидва Довготи буде негативним.
Практична секція
У цьому розділі я надам вам набір даних цієї статті, щоб ви могли практикувати ці методи самостійно.
Висновок
Досить сказати, що ви дізнаєтеся дуже ефективні методи, як розрахувати відстань між двома адресами в Excel після прочитання цієї статті. Якщо у вас є якісь кращі методи або запитання чи відгуки щодо цієї статті, будь ласка, поділіться ними у полі для коментарів. Це допоможе мені збагатити мої майбутні статті. Для отримання додаткових запитів, будь ласка, відвідайте наш веб-сайт ExcelWIKI.com .