Как рассчитать расстояние между двумя адресами в Excel (3 способа)

  • Поделись Этим
Hugh West

В статье вы узнаете, как рассчитать расстояние между двумя адресами в 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 , SIN и 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 CONCATENATE и SUBSTITUTE для вычисления расстояния между двумя адресами

Вы можете создать Google Map ссылку, чтобы найти расстояние между двумя адресами с помощью Excel CONCATENATE и ЗАМЕНИТЬ Функции Давайте рассмотрим процесс ниже.

Шаги:

  • Сначала введите следующую формулу в C8 .

=CONCATENATE("//maps.google.co.uk/maps?f=d&source=s_d&saddr=", SUBSTITUTE(B5," ", "+"),"&daddr="",SUBSTITUTE(B6," ", "+"))

Эта формула создаст Google Map ссылку о том, как вы можете путешествовать из Огайо на Аляска . CONCATENATE функция добавит адреса в ссылке и ЗАМЕНИТЬ функция поместит имя адреса .

  • Затем нажмите кнопку ENTER и вы увидите Google Map ссылка C8 .

  • После этого используйте следующее ссылка в строке поиска в интернете и вы получите расстояние информация об этих два адреса .

Наконец, вы можете рассчитать расстояние между двумя адресами земли в Excel, применяя CONCATENATE и ЗАМЕНИТЕ функции.

Читать далее: Как рассчитать расстояние между двумя городами в 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 = "&destinations="."&travelMode=driving&o=xml&key=" & Target_Value & "&distanceUnit=mi" 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 

Объяснение кода

  • Во-первых, мы назвали наш Функция в качестве DistanceInMiles Мы также вставили 3 параметры: First_Location As String, Final_Location As String и Target_Value As String .
  • После этого мы объявили Начальная_точка , Конечная_точка , Расстояние_Единица и Outout_Url в качестве Строка ; Setup_HTTP в качестве Объект .
  • Позже мы установили Начальная_точка как начало Url-ссылка , Конечная_точка в качестве Место назначения и Расстояние_Единица на Майлз .
  • После этого мы устанавливаем необходимые параметры для создания связи между нашими VBA код и API
  • Наконец, мы установили наши Функция, определяемая пользователем .
  • После этого, следуя тем же процедурам, мы сделали еще один Функция, определяемая пользователем чтобы найти расстояние в километры .

Вы можете видеть, что мы просто изменили Расстояние_Единица на километры .

  • После этого, на следующем рисунке, вы можете увидеть API ключ в ячейке C8 .

  • После этого введите в ячейку следующую формулу C8 .

=DistanceInMiles(E5,E6,C8)

  • Затем нажмите кнопку ENTER и вы увидите расстояние между Огайо и Аляска в мили .

  • После этого используйте следующую формулу, чтобы увидеть расстояние в километр .

=DistanceInKM(E5,E6,C8)

Таким образом, вы можете рассчитать расстояние между двумя адресами с помощью VBA и API ключ.

Читать далее: Как рассчитать расстояние между двумя адресами в Excel

О чем следует помнить

  • Помните об этом, вы должны поставить приблизительно правильные GPS-координаты из них государства в данных, потому что вы используете Интернет для поиска расстояния. Поскольку государства являются запад к Меридианная линия , оба их Лонгитуды будет отрицательным.

Практическая секция

В этом разделе я предоставлю вам набор данных из этой статьи, чтобы вы могли самостоятельно отработать эти методы.

Заключение

Достаточно сказать, что вы узнаете очень эффективные методы расчета расстояние между двумя адресами в Excel после прочтения этой статьи. Если у вас есть лучшие методы, вопросы или отзывы относительно этой статьи, пожалуйста, поделитесь ими в поле для комментариев. Это поможет мне обогатить мои будущие статьи. Для получения дополнительных запросов, пожалуйста, посетите наш сайт ExcelWIKI.com .

Хью Уэст — опытный тренер и аналитик Excel с более чем 10-летним опытом работы в отрасли. Он имеет степень бакалавра в области бухгалтерского учета и финансов и степень магистра делового администрирования. Хью страстно любит преподавать и разработал уникальный подход к обучению, которому легко следовать и который легко понять. Его экспертные знания Excel помогли тысячам студентов и специалистов по всему миру улучшить свои навыки и преуспеть в своей карьере. В своем блоге Хью делится своими знаниями со всем миром, предлагая бесплатные учебные пособия по Excel и онлайн-обучение, чтобы помочь отдельным лицам и компаниям полностью раскрыть свой потенциал.