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 :

Macro pour nuage de points comprenant deux séries


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Août 2011
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2011
    Messages : 2
    Par défaut Macro pour nuage de points comprenant deux séries
    Bonjour,

    J'ai un problème similaire à celui posé en début de forum. J'ai réalisé un nuage de points avec deux séries et je souhaiterais ajouter des étiquettes de données ayant pour noms les valeurs d'une colonne. Quelqu'un connait il la macro à appliquer?

    Merci!

  2. #2
    Expert éminent Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Par défaut
    Exemple pour chaque point du graphique, on ajoute une étiquette dont le contenu provient des cellules de C2 à Cxx de Feuil1

    A adapter
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Dim i As Integer
    Dim Ch As Chart
     
    Application.ScreenUpdating = False
    Set Ch = Worksheets("Feuil1").ChartObjects("Graphique 1").Chart    'Adapter nom de la feuille et nom du graphique
    With Ch.SeriesCollection(1)
        .ApplyDataLabels
        For i = 1 To .Points.Count
            .Points(i).DataLabel.Text = Sheets("Feuil1").Range("C" & i + 1)
        Next i
    End With
    Set Ch = Nothing

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Février 2011
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2011
    Messages : 94
    Par défaut
    Bonjour
    Avec cette macro.
    elle compte le nombre de série, une boite de dialogue s'ouvre, on selectionne la cellule de la premiere étiquette, cela pour la premiere série, ensuite la boite de dialogue s'ouvre de nouveau et faire la meme chose.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub Etiquettes()
    Dim s As Series, i As Integer
    Dim choix As Range
    With ActiveSheet.ChartObjects(1).Chart
      .ApplyDataLabels Type:=xlDataLabelsShowValue
      For Each s In .SeriesCollection
         Set choix = Application.InputBox(prompt:=" Sélectionner la premiere étiquette ", Type:=8)
        For i = 1 To s.Points.Count
          s.Points(i).DataLabel.Text = [choix].Offset(i - 1)
        Next
      Next
    End With
    End Sub

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

Discussions similaires

  1. Pb de macro pour comparer les données de deux feuilles
    Par loenia dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 22/06/2015, 15h32
  2. problème macro avec nuage de point
    Par Razekiel_ dans le forum Macros et VBA Excel
    Réponses: 35
    Dernier message: 14/06/2011, 15h03
  3. Réponses: 1
    Dernier message: 24/11/2008, 16h42
  4. [scatter] Superposition de deux nuages de points
    Par momo032114 dans le forum MATLAB
    Réponses: 3
    Dernier message: 01/08/2008, 11h56
  5. Réponses: 1
    Dernier message: 15/09/2006, 16h23

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