1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| Sub test()
donnéegooglemaps "toulon", "parois", False
End Sub
Function donnéegooglemaps(depart, arrivée, format_time)
Dim DemandeFichier As Object, distance As String, durrée As String, url As String, message As String
url = "<a href="https://maps.googleapis.com/maps/api/distancematrix/json?origins" target="_blank">https://maps.googleapis.com/maps/api...x/json?origins</a>=" & depart & "&destinations=" & arrivée & "&sensor=false"
Set DemandeFichier = CreateObject("Microsoft.XMLHTTP") 'instancie l'object
DemandeFichier.Open "POST", url, False
DemandeFichier.send
MsgBox DemandeFichier.responsetext 'ce message t'affiche tout le texte en entier
If InStr(DemandeFichier.responsetext, "NOT_FOUND") > 0 Then
message = " il n'y a pas de données pour ce parcour"
ElseIf InStr(DemandeFichier.responsetext, "INVALID_REQUEST") > 0 Then
message = " la requette n'a pas abouti " & vbCrLf & " verifiez les accents et autre symboles dans le depart ou destination " & vbCrLf & "supprimez les le cas echeant"
ElseIf InStr(DemandeFichier.responsetext, "text") > 0 Then
distance = Split(Split(DemandeFichier.responsetext, "text"" : """)(1), """,")(0)
durrée = Split(Split(DemandeFichier.responsetext, "text"" : """)(2), """,")(0)
If format_time Then
durrée = Replace(Replace(Replace(durrée, "hours", ":"), "mins", ":00"), " ", "")
durrée = format(Split(durrée, ":")(0), "00") & ":" & Split(durrée, ":")(1) & ":00"
End If
message = "disitance a parcourir = " & distance & vbCrLf & "durée du voyage = " & format(durrée, "hh:mm:ss")
End If
MsgBox message
End Function |