« »

Calculadora de rutas en Excel usando Google maps

August
22
member
sucotronic

google_maps_excel_calculator

En el artículo anterior explicaba como acceder a un objeto OLE o ActiveX desde java. En este voy a mostrar un ejemplo de como acceder al objeto OLE “Internet Explorer” desde una macro Excel para navegar a una cierta página y obtener información.

En concreto la página es google maps y la información es relativa a la distancia por carretera entre dos localidades. Para ver el ejemplo solo es necesario invocar a la función de la siguiente forma:

formula

Aquí dejo los ficheros Excel con la función implementada para el que quiera aprender a usar esta funcionalidad o le pueda ser útil la función en si misma:


date Posted on: Saturday, August 22, 2009 at 17:03 pm
Category programación.
Puedes seguir las respuestas de esta entrada a traves de l feed RSS 2.0.

Puedes dejar una respuesta, o trackback desde tu propio sitio.



34 Respuestas to “Calculadora de rutas en Excel usando Google maps”

  1. Jorge

    Lo primero agradecerte el pedazo de archivo. Me va a ser muy útil.

    En segundo lugar, y perdona mi ignorancia, me interesa aprender como funciona para añadir nuevas funcionalidades como poder realizar los calculos con el código postal.

    ¿Como puedo ver el contenido de la función y no sólo el resultado?

    Un saludo y gracias de nuevo.
    PD. Feliz Navidad

    [Responder]

    sucotronic Reply:

    @Jorge, me alegro de que te sea de utilidad. Para ver el código solo tienes que abrir el la ventana de visual basic de excel pulsando Alt+F11
    Gracias y feliz navidad a ti también 😀

    [Responder]

    December 23rd, 2009 at 10:57 am
     
  2. Miguel

    Hola Sucotronic !!
    sabes porque no funciona (ahora > nov 2010 / antes funcionaba perfectamente) la calculadora_distancias_google_maps.xls para Excel 2003 y anteriores.
    Google ha cambiado algun parametro? o quizas es problema del IE ?
    yo tabajo con Firefox predeterminado como explorador…aunque antes tambien y funcionava excelentemente desde excel.
    ¿hay algun modo de modificar el codigo, para que funcione de nuevo?
    espero que tus conocimientos nos ayuden !!
    gracias.
    Miguel

    [Responder]

    sucotronic Reply:

    @Miguel, resulta que google ha modificado la página y ha cambiado la tag de donde recogía el excel los datos. He hecho una modificación para que coja los datos de la primera ruta que muestra google (ahora siempre le da por mostrar varias) y aparecen algunos datos de más, pero por lo menos funciona y es lo más que puedo hacer por el momento.
    Espero que te sea de utilidad 🙂

    [Responder]

    Miguel Reply:

    @sucotronic, Sucotronic: Muchas gracias pues recibí tu explicación en noviembre…. Google ha modificado la página y ha cambiado la tag…, y desde entonces, aplicando tus cambios, funcionaba más o menos bien. Yo, con varias formulas de “limpieza”, aislaba, hasta obtener en dos casillas diferenciadas los datos “puros”: Km. y Tiempo de viaje.
    Justo ayer estaba preparando, una explicación para Rube a fin de que pudiese limpiar El, sus datos… pero hoy 24.03.11 ya no vuelve a funcionar nada ¿?
    Sabes si Google ha cambiado de nuevo la tag? ¿o que puede estar pasando?
    Gracias de antemano

    [Responder]

    sucotronic Reply:

    @Miguel, tendré que probarlo después para ver si lo han cambido. Ya te contaré.

    Miguel Reply:

    @Miguel, Hola Sucotronic: Ya vuelve a funcionarme. Ahora creo que en Google Maps, no han cambiado nada. Simplemente al tener los mismos síntomas (para mi) que en noviembre, creí que habían vuelto a cambiar la tag.
    Creo que debía ser un error interno, de mi libro Excel. Lo curioso es que se ha pasado dos días, sin yo cambiar nada, ahora funciona, ahora no va… ahora el resultado se llena de cuadraditos, ahora va perfecto. ..¿?
    En fin, de momento solucionado y gracias por vuestros consejos. Incluida la formula “mostruosa” :), de Rube.

    Miguel Reply:

    @sucotronic,
    Sucotronic , hola de nuevo. 23 abril 2011
    Quería preguntarte si sabes como podría conseguir, que de la Tag donde Excel recoge los datos, analizara y me avisase si detecta, la palabra ferry entre el texto de respuesta Google maps.
    Por Ejemplo: de Barcelona, Spain a Tenerife, Spain
    Ya que teniendo ese dato (que hay “agua de por medio”) mecanizado, en mi panel de control, ese dato cambiaria automáticamente indicaciones muy útiles en mis hojas de ruta.
    Gracias de antemano ¡!
    Miguel

    Ejemplo de texto real respuesta de Google Maps: Barcelona, spain a Tenerife, spain

    Esta ruta cruza algún peaje.más datos »Esta ruta incluye un ferry.más datos »

    [Responder]

    sucotronic Reply:

    @Miguel, lo mejor es usar la función Buscar de excel: el primero parámetro pasarle la llamada de la función de buscar ruta (o una celda donde está el resultado), y el segundo la palabra que buscas, “ferry”.

    miguel Reply:

    @Miguel, Uff!!
    Intentare explicarme mejor. Acompaño un archivo Excel para mayor entendimiento. http://db.tt/O8XKwxi

    Sucotronic, gracias por tu contestación, pero debido a que no se como modificarlo (por desconocimientos técnicos, dado que mi nivel de Excel es muy bajo), te adjunto un archivo Excel de ejemplo, a fin de que al menos puedas entender mi petición y si sabes como hacerlo, puedieras ayudarme.
    Gracias de nuevo por tu tiempo ¡!
    Miguel

    sucotronic Reply:

    @Miguel, lo siento, pero ahora mismo no tengo ningún ordenador con windows para probarlo. Intentaré acordarme cuando tenga uno para poder ayudarte.

    Juan Reply:

    @sucotronic,HOLA quisiera saber si el archivo que adjuntas ya tiene modificado el tag?, puesto que no funciona en mi ordernador

    gracias

    [Responder]

    November 12th, 2010 at 12:58 pm
     
  3. rube

    Buenas,

    Estoy intentando conseguir que poniendo dos direcciones en excel, me muestre la distancia de la ruta más corta.

    Googleando mucho, me he topado con esta página, que es lo más parecido que he encontrado, pero el resultado que me saca en la celda tiene incluye nº, tiempo, ruta y por fin la distancia, y solo quiero que me saque el dato en km para poder trabajar luego con eso.

    El problema es que no tengo conocimientos de programación y no encuentro la manera de modificarlo para obtenerlo.

    [Responder]

    sucotronic Reply:

    lo más sencillo es que uses alguna función de excel para extraer la parte de la información que te interese. Por ejemplo, podría usar la función “=DERECHA(F4;6)” (suponiendo que la celda que contiene el resultado de la función de calcular distancia estuviese en la celda F4).

    [Responder]

    January 14th, 2011 at 17:50 pm
     
  4. Rube

    Como yo necesitaba el dato de km en limpio para trastear y hacer operaciones al final, como me recomendó sucotronic, tuve que utilizar fórmulas de excel para limpiarlo.

    En concreto, mi “monstruosa” fórmula para sacarlo, evitando los errores, ha sido tal que así:

    =SI((SUSTITUIR(LIMPIAR(DERECHA(G2;8));” km”;””;1))=” sRuta”;0;(SUSTITUIR(LIMPIAR(DERECHA(G2;8));” km”;””;1)))

    Siendo G2 la celda donde tengo el resultado del InfoRuta.

    PD: Saque la formulita hace tiempo y no recuerdo todo el proceso mental que me llevo a ella, pero fue para corregir algunos errores.

    De todas formas veo que estais diciendo que Google a cambiado algo pero a mi de momento parece que me funciona, no se…

    [Responder]

    March 24th, 2011 at 16:36 pm
     
  5. consulta

    Como puedo hacer para ver en una planilla excel el google map desde ya muchas gracias

    [Responder]

    sucotronic Reply:

    @consulta, quizás este vídeo de youtube te ayude a hacer lo que pides.

    [Responder]

    December 22nd, 2012 at 4:09 am
     
  6. Alberto

    Hola Sucotronic.
    Para empezar muchas gracias por responderme. Es verdad me equivoque de post. Me puse en contacto contigo al ver como sacabas informacion de google maps y la exportabas a exel. Me encantó. Al final pude hacerla cuando comprendi que era cada cosa. No tengo ni idea de VBA y bastante poquito de exel pero aqui me tienes. Tengo muchas dudas y nada me sale, te ruego a ver si me puedes ayudar…, la primera trata sobre tu tutorial de la calculadora de distancias de google maps a exel y sobre este tutotial, te queria preguntar alguna formula que me separe el texto del tiempo menos los km, para dejarme el tiempo (horas-minutos-segundos) despejado y en ese formato, ya que con este dato debo hacer calculos.
    La segunda pregunta que no tiene relación se trata de como hacer una consulta dinámica desde una celda, es decir de como programar en VBA una consulta desde una celda y que sea rápida y dinámica, como los campos de google maps para poner origen y dirección. Se me entiende? Yo tengo 10.000 direcciónes y si no lo hago que sea:
    una busqueda rapida, inteligente, con desplegable y que se pueda escoger las opciones que nos proporciona; se combierte en una busqueda de locura.
    Como en mi diseño, las celdas donde hago las busquedas de origen y destino tienen otros campos debajo, me gustaria que este desplegable que se abre desde esta celda sea flotante y que no borre ni dañe lo qeu hay debajo. ESte desplegable donde van apareciendo las posibilidades dependiendo de lo qeu vamos escribiendo en nuestra celda de origen o destino, me gustaría que tuviese unos límites determinados ya que si no se taparía todo el diseño. Es decir sería algo así como simular el buscador de google maps.
    Conseguir los km, ya los consegúi porque salen al principio del texto. Los tiempos, necesito alguna formula para limpiar todo el texto sea el que sea y que me deje solo el tiempo (sacando tambien el dato de km y fijate que aveces salen dos tiempos, uno el normal y otro con los posibles atascos, sería fantastico disponer de este otro en otra celda),que se tarda en formato h:m:s. Y ya sería la leche si pudieses indicarme como sacar el gasto de combustible para cada trayecto con las diferentes opciones que nos ofrece google maps en nuestra tabla y nos la de en una celda, para poder hacer calculos con este dato.
    Todo esto es lo qeu pretendo hacer y me estoy volviendo loco. Miro por todos laddos y solo veo cosas que algunas me van bien y otras no se como adaptarlas. Necesito si puedes, que me heches una mano y se que lo que te pido son muchas cosas(siento ser tan inutil en esto). Fijate que voy copiando código y lo voy provando a ver si me funciona.

    Espero no te tomes a mal estas peticiones, se que es tiempo y si no puedes ayudarme, no te preocuopes que te lo agradezco como si ya lo hubieses hecho. Igualmente, te mando un saludo y decirte que la calculadora va genial.

    Un saludo y muchas gracias
    Alberto

    [Responder]
    May 8th, 2013 at 12:38 pm

    [Responder]

    sucotronic Reply:

    @Alberto, uf, pides bastantes cosas. En estos momentos no puedo ayudarte, ya que las funcionalidades que pides por supuesto se pueden hacer en vba, pero no dispongo de tiempo. Te recomiendo que busques algún tutorial de vba, realmente es sencillo hacerte tus propias funciones.

    [Responder]

    May 8th, 2013 at 19:40 pm
     
  7. Quirino

    Parece ser que desde la última actualización del google maps ya no funciona. Creo que el problema está en como captura la id.

    [Responder]

    sucotronic Reply:

    @Quirino, es posible. De todos modos, ya hace tiempo que no uso excel, así que si algún día lo reparo, probablemente lo haga como macro para libreoffice 😉

    [Responder]

    March 7th, 2014 at 14:47 pm
     
  8. Nicole

    hola, ante que todo muchas gracias por el tiempo que te tomas en contestar las dudas.
    Te escribo ya que debo realizar un trabajo donde necesito encontrar las distancias entre una oficina y 200 direcciones. Intente usar la planilla que esta mas arriba pero al momento de ingresar las direcciones aparece error en la celda de resultados. Lei algunos comentarios y creo q se trata del “tag” como lo puedo modificar?

    [Responder]

    October 9th, 2014 at 17:32 pm
     
  9. Enrique

    Me gustaría poder descargarlo para la versión de Excel 2013, si es posible, ya que no me funciona. Gracias

    [Responder]

    November 14th, 2014 at 19:04 pm
     
  10. FREDY GARCIA

    HOLA, COMO HAGO PARA QUE ME MUESTRE LA RUTA QUE DEBO COGER? MIL GRACIAS

    [Responder]

    December 19th, 2014 at 20:55 pm
     
  11. Joaquín

    Buenas!,

    en primer lugar muchas gracias por el post, me está siendo muy útil!

    Lo único que a mí no me muestra la ruta, simplemente me aparece #!VALOR! (y no he cambiado ningún origen ni destino, me aparece esto con los datos que das de ejemplo.

    Por lo que estoy viendo en el código, el problema viene con la sentencia
    result = ie.Document.GetElementById(“altroute_0”).InnerText

    a partir de la cual no devuelve nada

    ¿Sabéis a qué puede deberse??

    MUCHAS GRACIAS DE ANTEMANO!!

    [Responder]

    December 23rd, 2014 at 10:05 am
     
  12. Israel de Lamo

    Muy bonito, muchas grácias. Una cosita nada más, en 64bits hace falta “Declare PtrSafe” en las dos macros, por lo menos para que empiece a hacer algo. Luego yo no he logrado que tire, pero que sepas que en 64 bits va a dar guerra

    UN SALUDO Y GRACIAS POR EL ARCHIVO

    [Responder]

    April 3rd, 2015 at 10:48 am
     
  13. Marlon

    Buenas tardes

    Genial este archivo pero igual que otros colegas tengo problemas por que en la ruta me da error #!Valor¡ a veces me funciona y luego me falla que podria ser??

    [Responder]

    April 15th, 2015 at 23:42 pm
     
  14. Anzon

    Muy interesante, pero ya no funciona ¿no?
    y estoy realmente interesado, podrias volver a colgarlo sin el #!Valor¡

    Gracias

    [Responder]

    June 15th, 2015 at 12:06 pm
     
  15. PORFIRIO DIAZ NIETO

    Hola a mi no me funciona el excel porque pide una actualización al sistema de 64 bits y actualizar las instrucciones declare y marcarlas con ptrsafe
    ¿como puedo hacer eso?

    [Responder]

    March 16th, 2017 at 18:31 pm
     
  16. Rodrigo

    Buenas tardes.
    Me parece muy util su informacion pero por algun motivo no me aparece en la celda de la informacion de ruta la informacion simplemente me aparece #VALUE!.
    Me podria ayudar con este problema.

    [Responder]

    June 17th, 2017 at 19:04 pm
     
  17. primeros resultados en youtube

    primeros resultados en youtube

    a trastear un poco

    August 29th, 2018 at 9:40 am
     
  18. Https://ferrann.co/blog/miel-para-el-cabello/
     
  19. Https://ferrann.co/blog/decoloracion-del-cabello/
     
  20. Https://ferrann.com/blog/porque-se-cae-el-cabello/
     

Escribe un comentario


a trastear un poco is powered by WordPress
Theme is Coded&Designed by Wordpress Themes at ricdes