Carte interactive sur excel Mac 2013

Bonjour,
Je dispose d'un fichier sur excel MAC 2013, et cherche à réaliser une carte interactive.
Je dispose d'un fonds de carte dans lequel les pays sont indépendants les uns des autres. Je souhaiterais que la couleur d'un pays soit modifiée par un simple clic de ma souris.

J'ai essayé la petite macro en VBA suivante:
Sub TEST()
Dim NomShape As String
Dim Shape
NomShape = Application.Caller

For Each Shape In ActiveSheet.Shapes
Shape.Fill.ForeColor.RGB = RGB(0, 0, 250)
Next Shape

ActiveSheet.Shapes(NomShape).Fill.ForeColor.RGB = RGB(0, 200, 0)

End Sub

La première partie fonctionne et tous les pays apparaissent en bleu 'RGB (0, 0, 250) par contre ma macro se bloque dans la 2° partie avec l'application Caller
"NomShape = Application.Caller" apparaissant en jaune

Pouvez vous m'aider SVP

Merci d'avance

2 réponses

  1. Bonjour, peux-tu poster ton fichier sinon ce sera trop compliqué pour t'aider
    0
    1. Affecte la macro Test à chaque forme et essaie ce code :
      Option Explicit
      Sub Test()
      Dim shp As Shape
      Dim appel As Variant
        appel = Application.Caller
        If VarType(appel) <> vbString Then Exit Sub
        With ActiveSheet
          For Each shp In .Shapes
            shp.Fill.ForeColor.RGB = RGB(0, 0, 250)
          Next shp
          .Shapes(appel).Fill.ForeColor.RGB = RGB(0, 200, 0)
        End With
      End Sub
      Note : Tu ne peux pas exécuter cette macro directement depuis le VBE (appel = Erreur 2023)
      0