Macro pour calculer la distance entre deux villes via google maps

platina

XLDnaute Nouveau
Bonjour !

Je souhaite créer une macro utilisant google maps pour calculer la distance (via la route, et non à vol d'oiseau) entre deux villes ;
Disons que j'ai le nom ou code postal (ce qui rend la chose la plus simple!) de la première ville en A1 et le nom ou code postal de la seconde ville en A2.
Comment faire pour afficher la distance entre les deux en A3 ?

Merci beaucoup !!
 

degap05

XLDnaute Impliqué
Re : Macro pour calculer la distance entre deux villes via google maps

Bonjour BrunoM45,

C'est bizarre, aurais-tu une idée d’où cela pourrait provenir, que cette donnée soit conservée et où ?
J'ai dédoublé la macro nettoyage en "Nettoyage itin" et "Nettoyage sauv". J'ai pensé qu'il pourrait être judicieux de conserver les données sauvegardées plus longtemps qu'un itinéraire.
A+
 

REIVAX

XLDnaute Nouveau
Re : Macro pour calculer la distance entre deux villes via google maps

Bonjour Bruno,
Merci pour la nouvelle version avec les coordonnées GPS et la correction des petits bugs!!!
Pense-tu qu'il serait possible de créer une version pour lancer des multi départs-destinations en ayant le choix entre :
- Renseigner des adresses
- Renseigner des corrdonnées GPS

Merci!!!
 

Herdet

Nous a quitté
Repose en paix
Re : Macro pour calculer la distance entre deux villes via google maps

Pour Bruno45

Bonjour,
Ouf, ... 420 messages pour mettre au point cette application, ça doit être un record dans le XLD.
Je n'ai pas tout lu, tu t'en doutes.
J'ai téléchargé la dernière version V2.04.
C'est une belle application très intéressante et rapide (merci API Google ) qui a dû demander beaucoup de travail et en tous cas faire participer beaucoup de passionnés.

Je suis en train de l'examiner pour l'adapter à ma sauce :
- ajouter des listes déroulantes d'adresses
- ajouter des étapes pour avoir un trajet continu sans avoir à répéter les lieux de départs/arrivées dans les feuilles "Départs" et "Destinations"

J'ai trouvé un bug de calcul (ou de récup) sur plusieurs essais :
Adresse départ : 2, rue Balard 75015 PARIS Adresse arrivée : 1000, avenue de Maurin 34070 Montpellier

Calcul via API :
Distance calculée : 748 km (OK sur Maps) mais somme de la colonne : 849 km ( affichés en m et km mais sans total )
99 km d'erreur quand même !

Calcul via QUERY :
Distance calculée : introuvable (!) et somme de la colonne : 747,60 km ( affichés en m et km mais sans total )
A noter qu'une formule donnerait le total de la colonne F
=ARRONDI(SOMME.SI(F:F;"m";E:E)/1000+SOMME.SI(F:F;"km";E:E);2)

Qu'en penses-tu ?

Robert
 
C

Compte Supprimé 979

Guest
Re : Macro pour calculer la distance entre deux villes via google maps v2.05

Bonjour à toutes et à tous,

Comme souvent demandé (REIVAX en dernier), je viens de mettre en ligne la version 2.05
https://www.excel-downloads.com/thr...nce-entre-deux-villes-via-google-maps.106712/

Celle-ci permet de calculer son/ses itinéraire(s) via des coordonnées GPS

@Herdet, le problème venait d'un rendu erroné des informations ;)
car la distance est celle donnée par Google et non la somme de la colonne, qui d'ailleurs devrait être proche

Quant au calcul via Query, je ne l'utilise jamais, je pense même la supprimer du fichier... à voir

Au plaisir du partage :eek:
Comme dirait mon JCGL (que je salue) ... A++
 

kastor

XLDnaute Junior
Re : Macro pour calculer la distance entre deux villes via google maps

Bonjour,

J'ai un problème avec ce fichier.

Dans l'onglet sauvegarde, lorsque je veux faire la somme des Km je n'y arrive pas.

je pense que ça doit être un problème de format de la valeur, car si je "revalide" (en cliquant sur une cellule km, et que j'appuie sur "enter" dans la barre de formule, ça modifie le format du nombre pour obtenir "0.00"
mais comment faire pour modifier la marco pour qu'elle renseigne directement une valeur numérique de format 0.00 ???

Merci d'avance
 
Dernière édition:

piga25

XLDnaute Barbatruc
Re : Macro pour calculer la distance entre deux villes via google maps

Bonjour Kastor,

Rien ne sert de crier, il faut être un peut patient.

C'est tout simple à faire pour résoudre ce tout petit problème, il faut juste ajouter ceci sur un code : *1
Comme cela les données seront en format numérique et nom en texte.

Voici la ligne à modifier:

' Données itinéraire
ShtD.Range("K" & Dlig).Value = .Range("TotalKm").Value * 1

Allez voila le code complet à modifier.
Il est dans le module Gestion et c'est le dernier de la liste en bas, Sub Sauvegarde()

VB:
Sub Sauvegarde()
  Dim Dlig As Long, ShtD As Worksheet
  Set ShtD = Sheets("Sauvegarde")
  Dlig = ShtD.Range("B" & Rows.Count).End(xlUp).Row + 1
  With Sheets("Itinéraire")
    ' Données départ
    ShtD.Range("A" & Dlig).Value = .Range("DepAdr").Value
    ShtD.Range("B" & Dlig).Value = .Range("DepVille").Value
    ShtD.Range("C" & Dlig).Value = .Range("DepLat").Value
    ShtD.Range("D" & Dlig).Value = .Range("DepLong").Value
    .Range("DepLien").Copy Destination:=ShtD.Range("E" & Dlig)
    ShtD.Range("E" & Dlig).Borders.LineStyle = xlNone
    ' Données Arrivée
    ShtD.Range("F" & Dlig).Value = .Range("FinAdr").Value
    ShtD.Range("G" & Dlig).Value = .Range("FinVille").Value
    ShtD.Range("H" & Dlig).Value = .Range("FinLat").Value
    ShtD.Range("I" & Dlig).Value = .Range("FinLong").Value
    .Range("FinLien").Copy Destination:=ShtD.Range("J" & Dlig)
    ShtD.Range("J" & Dlig).Borders.LineStyle = xlNone
    ' Données itinéraire
    ShtD.Range("K" & Dlig).Value = .Range("TotalKm").Value * 1
    ShtD.Range("L" & Dlig).Value = .Range("TotalDurée").Value / 60 / 24
    .Range("LienMap").Copy Destination:=ShtD.Range("M" & Dlig)
  End With
End Sub


 
Dernière édition:

kastor

XLDnaute Junior
Re : Macro pour calculer la distance entre deux villes via google maps

re Bonjour,

J'ai constaté une "erreur" je pense.
Si la distance n'est que de quelques mètres, la valeur renvoyée est un nombre de mettre 33m par exemple, et non 0.033km.
Ne sachant pas trop où modifier la macro, j'en appelle à vos compétences.

Bien à vous.
 

piga25

XLDnaute Barbatruc
Re : Macro pour calculer la distance entre deux villes via google maps

RE,

Après vérification, lorsqu'il y a des mètres, dans le total cela affiche bien 0,525 km (par exemple).
Sur la feuille où le trajet s'affiche, oui il y a bien des mètres et des kilomètres. C'est pour info, car le total lui s'affiche toujour en km.
 

piga25

XLDnaute Barbatruc
Re : Macro pour calculer la distance entre deux villes via google maps

Bonjour Kastor

Je n'ai aucun problème en ce qui concerne les distances, tous s'affiche bien même uniquement avec des mètres.

Voir les copies d'écran

1/ Saisie des adresses

Capture adresse.JPG
2/ Résultat du calcul
Capture itineraire.jpg
3/ Feuille sauvegarde
Capture sauvegarde.JPGLa distance figurant sur l'itinéraire : 93 +70 + 37 = 200 m correspond au total feuille sauvegarde 0,2 km
 
C

Compte Supprimé 979

Guest
Re : Macro pour calculer la distance entre deux villes via google maps

Re,

Sans plus d'indications, cela va être difficile

Ou ont été saisi les données, sur quel bouton as-tu appuyé, etc ...

A+
 

Discussions similaires

Réponses
3
Affichages
292

Statistiques des forums

Discussions
312 185
Messages
2 086 011
Membres
103 093
dernier inscrit
Molinari