XL 2019 Calculer une liste de distances avec l'adresse exacte en utilisant l'api Matrix Google

Ja56

XLDnaute Nouveau
Bonjour,

Je travaille sur le Bilan Carbone de ma société et je cherche à calculer le plus précisément possible la distance entre plusieurs adresses.

J'ai déjà utilisé plusieurs excel de ce forum ou d'ailleurs, mais soit je peux rentrer des listes de milliers de lignes pour trouver des distances entre villes uniquement, soit je trouve des feuilles excel où je ne peux calculer que une distance avec adresse complète (cp, rue, numéro, ville) entre deux adresses.

Ma question : est-il possible d'avoir un fichier excel comme celui des villes, mais utilisant l'api matrix et permettant de calculer à la chaîne plusieurs distances à la chaîne avec des adresses complètes ?

En vous remerciant par avance.
 

crocrocro

XLDnaute Impliqué

Ja56

XLDnaute Nouveau
Bonjour Ja56,
j'ai essayé de récupérer des informations sur l'api Matrix de Google pour voir si on pouvait appliquer le même type de code que pour le calcul de distance de ville à ville (sans adresse) comme vous l'évoquez MAIS, il semblerait que son utilisation soit payante. Voir ce lien :
https://console.cloud.google.com/apis/library/distance-matrix-backend.googleapis.com
En aviez-vous connaissance ?

Bonjour,
Oui c'est payant mais à partir d'un certain nombre de requêtes journalière et/ou annuelles
 

crocrocro

XLDnaute Impliqué
Quand je me connecte avec le lien que j'ai indiqué dans ma réponse précédente, sur le bandeau, j'ai une proposition d'un simple essai gratuit.
En pj pour rappel, un fichier excel avec une solution pour le calcul de Ville à Ville (sans l'adresse complète dont voici le code VBA (de PierreP56).
Il serait peut-être possible de l'adapter pour Matrix en repérant dans le contenu de la variable Txt où se situe la distance entre les 2 adresses. Le SPLIT permettant d'isoler la valeur.


VB:
'
Option Explicit
 ***********************************************************************
' *****                                                             *****
' *****        CODE PierreP56 : http://tatiak.canalblog.com/        *****
' *****                                                             *****
' ***********************************************************************


Public Const DIST = "http://www.distance2villes.com/recherche?source="
Sub Distance()
Dim lg As Integer, i As Integer
Dim Url As String, Txt As String

    With Sheets(1)
        lg = .Cells(Rows.Count, 1).End(xlUp).Row
        For i = 2 To lg
            Url = DIST & .Range("A" & i).Value & "&destination=" & .Range("B" & i).Value
            With CreateObject("WINHTTP.WinHTTPRequest.5.1")
                .Open "GET", Url, False
                .send
                Txt = .responseText
            End With
            .Range("C" & i).Value = Split(Split(Txt, "id=""distanciaRuta"">")(1), "</strong>")(0)
            .Range("D" & i).Value = Split(Split(Txt, "id=""tiempo"">")(1), "</span>")(0)
        Next i
    End With
End Sub
 

Pièces jointes

  • Distance entre 2 adresses.xlsm
    21.1 KB · Affichages: 36
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
315 088
Messages
2 116 089
Membres
112 658
dernier inscrit
doro 76