IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

graphique croisé dynamique cumulé - Nom de abscisse /ordonnée sur event mouseUp


Sujet :

Macros et VBA Excel

  1. #1
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    981
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 981
    Points : 1 028
    Points
    1 028
    Billets dans le blog
    36
    Par défaut graphique croisé dynamique cumulé - Nom de abscisse /ordonnée sur event mouseUp
    Bonjour

    j'ai le graphique suivant

    Nom : pivotChart.png
Affichages : 82
Taille : 27,0 Ko

    Le code ci-dessous dans le module VBA de l'onglet avec le graphique renvoie le nom de la série associé à la couleur.

    Mais comment obtenir le nom de l'abscisse -> [Y] ou [Y+1] ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    Private WithEvents oCht As Excel.Chart
    Private Sub oCht_MouseUp(ByVal Button As Long, ByVal Shift As Long, ByVal x As Long, ByVal y As Long)
        Dim IDNum As Long
        Dim a As Long
        Dim b As Long
        Dim vCats As Variant
     
     
         oCht.GetChartElement x, y, IDNum, a, b
     
        If IDNum = xlSeries Then MsgBox oCht.SeriesCollection(a).Name
     
     
    End Sub
     
    Private Sub Worksheet_Activate()
         HookChart
    End Sub
     
    Public Sub HookChart()
        Set oCht = Me.ChartObjects("graphRisk").Chart
    End Sub
    Mal nommer un objet, c'est ajouter au malheur de ce monde, car le mensonge est justement la grande misère humaine, c'est pourquoi la grande tâche humaine correspondante sera de ne pas servir le mensonge
    Poésie 44, n° 17 - Albert Camus

    Mes réponses vous ont aidés, un clic sur leur pouce vert
    Bonjour chez vous

  2. #2
    Membre éprouvé

    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    981
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 981
    Points : 1 028
    Points
    1 028
    Billets dans le blog
    36
    Par défaut
    Solution simple


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    oCht.GetChartElement x, y, IDNum, a, b 'a = ordonnée / b = abscisse
     
    vCats = oCht.SeriesCollection(1).XValues
        If IDNum = xlSeries Then MsgBox  vCats(b) ' -> Donne la valeur de l'abscisse
    Mal nommer un objet, c'est ajouter au malheur de ce monde, car le mensonge est justement la grande misère humaine, c'est pourquoi la grande tâche humaine correspondante sera de ne pas servir le mensonge
    Poésie 44, n° 17 - Albert Camus

    Mes réponses vous ont aidés, un clic sur leur pouce vert
    Bonjour chez vous

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 8
    Dernier message: 20/06/2017, 14h41
  2. Modifier l'aspect d'un graphique croisé dynamique
    Par Goldenduck4000 dans le forum IHM
    Réponses: 6
    Dernier message: 01/06/2006, 15h11
  3. [C#]composants pour créer graphiques croisé dynamiques
    Par bossun dans le forum Windows Forms
    Réponses: 2
    Dernier message: 30/05/2006, 10h49
  4. [MySQL] variable dynamique:récupérer le nom, pas le contenu
    Par php_de_travers dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 18/02/2006, 09h13
  5. imprimer graphique croisé dynamique ou formulaire
    Par bossun dans le forum VBA Access
    Réponses: 4
    Dernier message: 23/06/2004, 11h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo