Matrice de distances - Google Maps

NezQuiCoule

XLDnaute Occasionnel
Bonjour à tous !

Comme conseillé par eriiiic et d'autres, et ils n'ont pas tort, je créé mon propre topic pour partager avec vous le fichier que j'ai élaboré.
Le principe est simple : lorsqu'on élabore un distancier "à la main", on doit saisir sur un site de cartographie en ligne (Google Maps, ViaMichelin, ...) la ville de départ et la destination, puis récupérer la distance, chose longue et fastidieuse lorsqu'on le fait avec beaucoup de localisations.

Le but du fichier est donc de faciliter cette tâche, à l'aide de 2 feuilles :
-La première, "Départ-Arrivée" permet tout simplement de calculer la distance entre la ville de départ et la destination saisie. On peut créer une liste puis lancer le calcul avec le bouton "Calculer". Cette fonction permet de créer des listes rapidement sans trop se prendre la tête.
-La seconde, qui sera certainement plus intéressante, appelé "Matrice" correspond à un distancier. On saisie dans la colonne A le nom des villes qui nous intéresse, on vide le tableau en supprimant les distances déjà présentes si c'est le cas, puis on lance en cliquant sur "Créer Distancier". Une barre de progression s'affiche, il ne reste plus qu'à patienter si cela fonctionne bien. À noter que le trajet "Départ-Arrivée" et "Arrivée-Départ" est considéré ici comme identique, ce qui n'est pas toujours vrai.. Mais pour un gain de temps je ne pense pas qu'il soit nécessaire de faire 2 fois plus de requêtes.

Vous pouvez spécifier pour la ville son nom, le code postal, les coordonnées GPS, le pays, région... Plus vous êtes précis, moins Google Maps fera d'erreur, car ici pas de suggestion, c'est à vous d'être précis. ;)

Le principe est très simple, je n'ai rien inventé.. Si vous utilisez ce lien :

https://maps.google.fr/maps?t=m&saddr=ville_départ&daddr=ville_arrivée&output=classic&dg=ntvb

En remplaçant ville_départ et ville_arrivée par vos destinations, vous tombez directement sur l'itinéraire.

Il faut donc savoir qu'utiliser Google Maps de cette façon n'est pas vraiment conseillé puisque le fichier repose sur le fait que la structure de l'API Google Maps n'évolue pas, ce qui n'est pas le cas pour un géant comme Google. Donc tôt ou tard il y a fort à parier que leur site évolue et que ce fichier ne fonctionne plus, profitons-en donc. :)

Sans plus tarder voilà le fichier, avec la petite modification apportée par eriiiic pour l'affichage correct des valeurs, que je remercie chaleureusement.
Bien entendu je réponds aux questions dans la mesure du possible et je suis ouvert à toutes critiques, bonnes ou mauvaises, on est là pour apprendre et s'entraider après tout :cool:

************* EDIT **************

Fichier mis à jour en v3 :

- Amélioration globale du code (vitesse + stabilité)
- Possibilité de calculer ou non un trajet "Aller" et "Retour" de façon indépendante (Merci Anette ;) ) sous forme de case à cocher (dans Matrice Distance)
- Remplissage des 2 matrices en même temps et format temps en [h]:mm afin de pouvoir exploiter les données facilement (Merci Eric :p )
- Possibilité de visualiser le trajet (dans Matrice Temps) en cliquant sur une case et en appuyant sur le bouton
- Modifications des villes depuis la feuille Matrice Distance, reproduisant celle-ci dans Matrice Temps
 

Pièces jointes

  • Distance Google Maps-v3.xlsm
    55.2 KB · Affichages: 6 593
  • Distance Google Maps-v3.xlsm
    55.2 KB · Affichages: 3 391
  • Distance Google Maps-v3.xlsm
    55.2 KB · Affichages: 4 594
Dernière édition:

Fifi79

XLDnaute Nouveau
Bonjour,

génial ton code vraiment excellent. Juste pour info :
on est limité à 2500 requêtes par jour et 50 par secondes.

Sinon je viens de tester tout fonctionne like a charm, mais la matrice des temps elle ne veut rien entendre. :/
par contre si je rajoute une ville dans la matrice distance, et que, j'ai effacé avant l'indexation automatique dans la matrice temps, et bien, cette nouvelle ligne/colonne se remplie.. je suis un peu perdu du coup.

Une autre petite question : pourquoi autant de manipulation pour les temps ??? il me semble que l'api est censée retourner value en seconde et texte en "heure:minutes:secondes etc" ?? à lire d'autres script bien moins réussis que le tien, aucun n'est aussi complexe pour extirper ces infos... du coup je nage dans ton code.

Merci.

EDIT : Alors en vidant complètement la matrice des distances, puis en ajoutant ensuite les villes, la matrice des temps se met bien à jour.[/QUOTE
Re : Matrice de distances - Google Maps

Bonjour Nezquicoule

Tout d'abord un grand merci pour ce fichier magique. Cela fait longtemps que je rame avec les calculs de distances
Par contre après quelques utilisation le fichier n'affiche plus les distances (resultats 0)
Est ce qu'il y a une limite dans le nombre de calculs?
Merci
Bonjour et merci pour cette merveilleuse feuille de calcul
avez vous trouvez la solution pou
Re : Matrice de distances - Google Maps

Bonjour eric, Annette, le forum :)

Je viens de mettre à nouveau à jour le fichier, en prenant en compte cette fois toutes vos remarques !
Au programme :
- Amélioration globale du code
- Possibilité de calculer ou non un trajet "Aller" et "Retour" de façon indépendante (Merci Anette ;) ) sous forme de case à cocher (dans Matrice Distance)
- Remplissage des 2 matrices en même temps et format temps en [h]:mm afin de pouvoir exploiter les données facilement (Merci Eric :p )
- Possibilité de visualiser le trajet (dans Matrice Temps) en cliquant sur une case et en appuyant sur le bouton
- Modifications des villes depuis la feuille Matrice Distance, reproduisant celle-ci dans Matrice Temps

Je vais modifier le fichier en premier post afin que les personnes visitant ce sujet puissent trouver le fichier facilement, et l'ajouter également ici (afin de conserver un historique de mes modifications).

Merci pour toutes les recommandations, le fichier commence à être vraiment agréable à utiliser :cool:
 

Fifi79

XLDnaute Nouveau
Re : Matrice de distances - Google Maps

Bonjour eric, Annette, le forum :)

Je viens de mettre à nouveau à jour le fichier, en prenant en compte cette fois toutes vos remarques !
Au programme :
- Amélioration globale du code
- Possibilité de calculer ou non un trajet "Aller" et "Retour" de façon indépendante (Merci Anette ;) ) sous forme de case à cocher (dans Matrice Distance)
- Remplissage des 2 matrices en même temps et format temps en [h]:mm afin de pouvoir exploiter les données facilement (Merci Eric :p )
- Possibilité de visualiser le trajet (dans Matrice Temps) en cliquant sur une case et en appuyant sur le bouton
- Modifications des villes depuis la feuille Matrice Distance, reproduisant celle-ci dans Matrice Temps

Je vais modifier le fichier en premier post afin que les personnes visitant ce sujet puissent trouver le fichier facilement, et l'ajouter également ici (afin de conserver un historique de mes modifications).

Merci pour toutes les recommandations, le fichier commence à être vraiment agréable à utiliser :cool:


Bonjour et merci pour cette merveilleuse feuille de calcul très très utile
avez vous trouvez la solution pour éviter les calcul à 0 après plusieurs utilisation ?? et la limitation de 2500 lignes car suite à un contrôle Urssaf j ai un
grand nombre de recherche à faire . donc si vous avez une nouvelle version sans cette contrainte je suis preneur... Et encore merci pour le partage
 

Fifi79

XLDnaute Nouveau
Salut à tous,

Pour des séries de distances, voici un fichier simplifié : on colle la liste des départs-arrivées en colonnes A et B et on clique sur le bouton pour avoir les distances et durées des trajets Google.

Pour répondre sur la question des limitations, il me semble que c'est l'Api de Google qui limite les accès à ses serveurs et non un problème de Vba.

Pierre
Merci Tatiak pour cette réponse je vais tester tout de suite tester cette version
 

GLS3D

XLDnaute Nouveau
Salut à vous,

Je suis tombé il y a quelques minutes sur ce sujet de conversion et me suis dit : ça y est, j'ai LA solution à mes problèmes de calcul rébarbatif de distance. Malheureusement, ce Graal semble me filer entre les doigt :
1. Version VBA : erreur de compilation "Membre de données ou de méthode introuvable" à laquelle je n'ai pour l'heure pas de solution
2. Version JSON : résultats des calcul à zéro.

Je cumule donc les problèmes évoqués par les uns et les autres mais croyez bien que je félicite malgré tout les concepteurs de ces modèles.

Bref, le dernier post datant du 2/04, je me permets de relancer les experts : avez-vous pu identifier une solution à l'un ou l'autre de ces soucis ??

Merci d'avance.
A+
 

GLS3D

XLDnaute Nouveau
Bonjour

regarde avec ce fichier que j ai trouvé

Merci pour tes efforts mais le sort s'acharne : erreur de compilation !!
Pour info je suis sous W10 + Office 2016

upload_2017-4-19_9-16-37.png


A+
 

Anne-Marie

XLDnaute Nouveau
Bonjour à tous !

Je voudrais tout d'abord vous remercier pour ce fichier de calcul de distance absolument génial qui peut faire gagner un temps fou !

Comme beaucoup l'ont évoqué, j'ai aussi rencontré le problème d'unité:
- si la distance est inférieure à 100 km, par exemple une distance de 17,4 km, le fichier affichera 174
- si la distance est comprise entre 100 et 1000 km, pas de soucis
- si la distance est supérieure à 1000 km, par exemple 1300 km, le fichier affichera 1

Plusieurs personnes ont évoqué des solutions mais je n'arrive pas à les adapter au fichier de base. Quelqu'un pourrait mettre à disposition le fichier initial prenant en compte la correction ?

Milles mercis !!
Anne-Marie
 

bleutneut

XLDnaute Nouveau
Bonjour,

Autre fichier à connaitre qui fonctionne très bien en requete de masse via google + geoloc
qui calcule distance geolocalisation, km, durée transposable sur google maps pour faire ses propres cartes

Ce lien n'existe plus

Cordialement
 

puech

XLDnaute Nouveau
Bonjour à tous,

Cela fait quelques temps que j'utilise le superbe distancier "distance google maps v3-1" (ci-joint).
Jusqu'ici tout allait bien et depuis la semaine dernière, à chaque fois il ne me sort que des "aucun résultat" partout. plus rien ne fonctionne.

Auriez-vous une idée de pourquoi?

Merci pour votre aide!

Bonne journée
 

Pièces jointes

  • Distance Google Maps-v3-1.xlsm
    55.9 KB · Affichages: 573

Erwan51150

XLDnaute Nouveau
Bonjour et désolé pour ce déterrage de topic par avance.
J'ai une question par rapport à ce fichier que je souhaiterai utiliser.
Lorsque je l'ouvre et que je veux lancer la macro pour le calcul des km, je me retrouve face à un problème d'éxécution de la macro.
Après avoir un peu cherché sur le net, il apparait que le problème vient de ma machine, puisque j'utilise Office 16 en 64 bits et que je ne peux pas executer de objet créés en 32 bits, comme c'est écrit dans ce lien https://answers.microsoft.com/fr-fr...ocx-dans/55a46a2d-8267-467c-aec0-6f5c03703ae2.

Je voudrais donc savoir s'il existe un moyen (sans que je n'ai à changer de version d'Office) pour faire tourner cette superbe macro ?

D'avance, merci pour le temps que vous prendrez pour me lire et pour me répondre.
 

Discussions similaires

Statistiques des forums

Discussions
315 096
Messages
2 116 184
Membres
112 678
dernier inscrit
arno12345678