Carte du monde : dessiner une ligne entre deux cellules

Bonjour,

J'aimerais savoir comment insérer automatiquement en VBA une ligne graphique entre deux cellules dont les coordonnées sont déterminées de manière variable par le code.

Le code en question calcule simplement le nombre de cases entre deux cases (le fichier excel représente une carte du monde). La case de départ est la case sélectionnée au moment de lancer la macro, la case d'arrivée est celle d'un port sélectionnée dans un menu déroulant. Le résultat de la macro est une box d'information sur la plus grande distance (entre lignes et colonnes) entre les deux points et l'affichage d'un "X" sur la colonne de départ sélectionnée (qui représente la position d'un navire). Voir l'image ci-après:

capture coord

J'aimerais qu'en plus une ligne s'affiche reliant ces deux cases (donc ici entre le "X" et Cherbourg).

Les seuls éléments que je maîtrise c'est la référence, et donc les no de ligne et de colonne de la case de départ et celles de la case d'arrivée. Avec ces 4 éléments est-il possible de dessiner cette ligne (ou flèche) ?

La ligne 1 de la feuille contient les longitudes (dans mon exemple 7,3 degrés pour la case de départ) et la colonne A les latitudes (49,15 dans l'exemple), mais je pense qu'ils ne me servent à rien pour dessiner cette ligne.

Merci beaucoup pour vos conseils.

Dois-je poster le code VBA ou l'illustration est-elle suffisamment parlante ?

Bonjour,

un essai à tester:

Dim D As Range, A As Range, Shp As Shape

With Worksheets("Feuil1") ' à adapter
 Set D = .Range("B6") ' cellule Départ
 Set A = .Range("H21") ' cellule Arrivée
 dx = D.Left + D.Width / 2
 dy = D.Top + D.Height / 2
 ax = A.Left + A.Width / 2
 ay = A.Top + A.Height / 2

 Set Shp = .Shapes.AddLine(dx, dy, ax, ay)
 Shp.Name = "Ligne"  ' optionnel mais utile pour retrouver cette ligne par Shapes("Ligne")....
    With Shp
    .Line.ForeColor.SchemeColor = 12 'couleur bleue 10 :rouge
    .Line.Weight = 4.5  'épaisseur du trait
    '.Delete  pour supprimer
    End With
End With

A+

Ca marche très bien ! Merci beaucoup

Rechercher des sujets similaires à "carte monde dessiner ligne entre deux"