lien entre une carte et des tableaux

  • Initiateur de la discussion Initiateur de la discussion hpa
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

hpa

XLDnaute Nouveau
bonjour
Est-ce qu'on peut créer un lien entre la carte et un tableau ? C'est-à-dire lorsque je clic sur un gouvernorat sur ma carte il s'affiche au-dessous un graphe qui contient les informations.
Est-ce que je dois créer tous les graphiques dans une autre feuille ? Ou bien c’est bon avec ma liste déroulante.
Merci de dire comment je faire une et je termine le reste .j'ai essayé mais je n’ai pas trouvé solution.
merci
 

Pièces jointes

Dernière édition:
Re : lien entre une carte et des tableaux

Bonjour hpa, CISCO

Comme je n'ai pas compris la même chose, un lien vers la gestion des images de Boisgontier et fichier exemple qui applique le principe.

Cordialement

merci a vos réponse
la question c'est si je clic sur le gouvernorat de sfax sur ma carte comment les résultats démographiques s'affiche automatiquement et se change automatiquement si je clic a une autre gouvernorat .
est e que je doit creer tous les graphiques dans une autre feuille .
 
Re : lien entre une carte et des tableaux

Bonjour,

Une piste avec la démarche suivante

1) Copiez le code suivant dans la fenêtre de code de la feuille concernée (tab dans votre cas)
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim SH As Shape
'---
If Not Application.Intersect(Target, ActiveSheet.Range(CELLULE_LISTE)) Is Nothing Then
  For Each SH In ActiveSheet.Shapes
    With SH.Fill.ForeColor
      .RGB = vbWhite
      If UCase(SH.Name) = UCase(ActiveSheet.Range(CELLULE_LISTE)) Then
        .RGB = 13434879
      End If
    End With
  Next SH
End If
End Sub

Private Sub Worksheet_Deactivate()
Call DelOnAction
End Sub

Private Sub Worksheet_Activate()
Call MakeOnAction
End Sub

2) Copiez le code suivant dans un module Standard
Code:
'### Constante à adapter ###
Public Const CELLULE_LISTE  As String = "H3"
'###########################

Sub MakeOnAction(Optional dummy As Byte)
Dim SH As Shape
For Each SH In ActiveSheet.Shapes
  If SH.AutoShapeType = msoShapeNotPrimitive Then
    SH.OnAction = "ShapeOnClick"
  End If
Next SH
End Sub

Sub ShapeOnClick(Optional dummy As Byte)
Dim SH As Shape
'--- Identifie, par son nom, la Shape qui a été cliquée ---
Set SH = ActiveSheet.Shapes(Application.Caller)
'--- Modifie la valeur de la liste ---
ActiveSheet.Range(CELLULE_LISTE) = SH.Name
End Sub

Sub DelOnAction(Optional dummy As Byte)
Dim SH As Shape
For Each SH In ActiveSheet.Shapes
  SH.OnAction = ""
Next SH
End Sub

Cela fait 2 choses distinctes
1) si vous cliquez sur votre carte, la région se colore et modifie la cellule H3 ainsi que le graphique
2) si vous changez la cellule H3 par le biais de votre liste, la région se colore et modifie le graphique
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
8
Affichages
1 K
Réponses
5
Affichages
543
Deleted member 453598
D
Réponses
35
Affichages
1 K
Réponses
0
Affichages
131
Réponses
16
Affichages
1 K
Retour