Cómo calcular la distancia en Excel con Google Maps

  • Compartir Este
Hugh West

Excel tiene una amplia gama de aplicaciones. Y mientras se utiliza VBA entonces parece que podemos hacer lo que queramos en Excel. Así que, por supuesto, podemos encontrar la distancia entre lugares utilizando un mapa en Excel. En este artículo, mostraré una guía rápida para calcular la distancia en Excel con Google Maps con pasos nítidos e ilustraciones claras.

Descargar el cuaderno de prácticas

Puedes descargarte el libro de Excel gratuito desde aquí y practicar por tu cuenta.

Calcular-distancia-con-Google-Maps.xlsm

Uso de una función definida por el usuario para calcular distancias en Excel con Google Maps

Aquí encontrar la distancia entre MacArthur Park y Jersey City usando Google Maps.

En primer lugar, necesitamos saber una cosa importante. Para calcular la distancia en Excel utilizando Google Maps, necesitaremos un API llave. API significa Interfaz de programación de aplicaciones . Excel se conecta con Google Maps utilizando la clave de API para recopilar los datos necesarios. Algunos mapas proporcionan claves de API gratuitas como Bing Maps. Pero Google Maps no proporciona API gratuita. Aunque maneje una API gratuita de alguna manera no funcionará perfectamente. Por lo tanto, tendrá que comprar la clave de API gratuita. API de este enlace.

Aquí, he conseguido un API No funciona correctamente, sólo se utiliza para mostrar como un ejemplo. Vamos a utilizar VBA para crear un función definida por el usuario llamado Calcular_distancia a encontrar la distancia Tendrá tres argumentos. Lugar de inicio , Destino y Clave API Ahora vamos a iniciar los procedimientos.

Pasos:

  • Pulse ALT + F11 para abrir el Ventana VBA .

  • A continuación, haga clic en Insertar> Módulo para crear un nuevo módulo.

  • A continuación, escriba los siguientes códigos en la ventana-
 Public Function Calcular_Distancia(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 (compatible; MSIE 6.0; Windows NT 5.0)" mitHTTP.Send ("") If InStr(mitHTTP.ResponseText, """distance"" : {") = 0 Then GoTo ErrorHandl Set mit_reg =CreateObject("VBScript.RegExp"): mit_reg.Pattern = """valor"".*?([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 ErrorHandl: Calculate_Distance = -1 End Function 
  • Pues nada, vuelve a tu hoja.

Desglose del código:

  • En primer lugar, he utilizado un procedimiento Public Function Calcular_distancia .
  • A continuación, declaró algunas variables primer_valor, segundo_valor y último_valor para los argumentos de nuestra función definida por el usuario.
  • Establezca los valores para las variables (cada valor es autodescriptivo), y establezca el mitHTTP objeto en ServidorXMLHTTP utilizar el GET (utilizado más adelante, esta propiedad de objeto permitirá utilizar el método POST ).
  • Url es la combinación de todos los valores establecidos anteriormente, la propiedad open del mitHTTP objeto lo utilizó.
  • Después de asignar los valores, la función de biblioteca realiza el resto del cálculo.

Ahora ya ves, nuestra función está lista para usar.

  • En Célula C8 escriba la siguiente fórmula
=Calcular_distancia(C4,C5,C6)

  • Por último, basta con pulsar la tecla INTRODUCE para obtener la distancia. Mostrará la distancia en el Unidad de contador .

Más información: Cómo calcular la distancia en coche entre dos direcciones en Excel

Ventajas e inconvenientes de calcular distancias con Google Maps

  • Debe tener un Clave API .
  • El código anterior dará la salida en el Unidad de contador .
  • La función definida por el usuario utiliza directamente los topónimos, sin necesidad de utilizar coordenadas.
  • Asegúrese de que ha utilizado un lugar válido.

Ventajas y desventajas de calcular la distancia con Google Maps

Ventajas

  • Para un par de lugares grandes, es bastante factible porque podemos utilizar el Asa de llenado para copiar la fórmula. Eso no es posible en Google Maps
  • Es una forma bastante más rápida.
  • No es necesario utilizar coordenadas.

Desventajas

  • No puede funcionar con coordenadas.
  • No obtendrás el mapa ni la ruta, sólo la distancia.
  • No funcionará con la coincidencia aproximada de los topónimos.

Conclusión

Espero que los procedimientos descritos anteriormente sean lo suficientemente buenos para calcular la distancia en Excel con Google Maps. No dudes en hacer cualquier pregunta en la sección de comentarios y, por favor, dame tu opinión. Visita ExcelWIKI para explorar más.

Hugh West es un capacitador y analista de Excel altamente experimentado con más de 10 años de experiencia en la industria. Tiene una Licenciatura en Contabilidad y Finanzas y una Maestría en Administración de Empresas. Hugh tiene una pasión por la enseñanza y ha desarrollado un enfoque de enseñanza único que es fácil de seguir y comprender. Su conocimiento experto de Excel ha ayudado a miles de estudiantes y profesionales en todo el mundo a mejorar sus habilidades y sobresalir en sus carreras. A través de su blog, Hugh comparte su conocimiento con el mundo, ofreciendo tutoriales gratuitos de Excel y capacitación en línea para ayudar a las personas y empresas a alcanzar su máximo potencial.