Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 insertion carte google maps lie a un calcul de trajet dans excel

DenyscVir

XLDnaute Nouveau
Bonjour

Je souhaite savoir s'il est possible d'insérer une carte automatiquement montrant le trajet en fonction de 2 points qui peuvent être des CP ou des villes ?

J'ai réussi à faire un calcul automatique des KM via un API google mais là franchement je n'y arrive pas

Pouvez-vous svp m'aider ?
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour DenyscVir,
N'ayant pas de clé API sur ce service Google, j'ai regardé ce que ChatGPT ( Lien ) répondrait à votre requête sans pouvoir le tester :
Excel VBA, Je souhaite savoir s'il est possible d'insérer une carte automatiquement montrant le trajet en fonction de 2 villes ?
Il répond ceci :
et donne ce code :
VB:
Sub InsérerCarteTrajet()
    Dim URL As String
    Dim HTML As Object
    Dim ie As Object
    Dim villeDepart As String
    Dim villeArrivee As String

    ' Définir les villes de départ et d'arrivée
    villeDepart = "Paris"
    villeArrivee = "Marseille"

    ' Construire l'URL pour l'API Google Maps Directions
    URL = "https://www.google.com/maps/embed/v1/directions?key=VOTRE_CLE_API&origin=" & villeDepart & "&destination=" & villeArrivee

    ' Créer une instance de Internet Explorer
    Set ie = CreateObject("InternetExplorer.Application")

    ' Ouvrir une fenêtre Internet Explorer invisible
    With ie
        .Visible = False
        .navigate URL
        ' Attendre que la page se charge
        Do While .Busy Or .readyState <> 4
            DoEvents
        Loop

        ' Insérer la carte dans une feuille Excel
        Set HTML = .document
        ActiveSheet.Shapes.AddOLEObject ClassType:="Shell.Explorer", Link:=False, DisplayAsIcon:=False, Width:=400, Height:=400, Left:=100, Top:=100
        ActiveSheet.OLEObjects(ActiveSheet.OLEObjects.Count).Object.src = URL

        ' Fermer Internet Explorer
        .Quit
    End With

    ' Libérer les objets
    Set ie = Nothing
    Set HTML = Nothing
End Sub
Essayez, ça ne coute rien.
Pour avoir essayé d'autres codes, ChatGPT est loin de la perfection en VBA, mais donne quelquefois certaines pistes intéressantes.
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…