VBA : Nuage de point - libellés & filtres

Résolu/Fermé
cs_Ronan44 Messages postés 2 Date d'inscription mardi 9 décembre 2008 Statut Membre Dernière intervention 6 octobre 2014 - 3 oct. 2014 à 15:19
cs_Ronan44 Messages postés 2 Date d'inscription mardi 9 décembre 2008 Statut Membre Dernière intervention 6 octobre 2014 - 6 oct. 2014 à 10:49
Bonjour,

Je sollicite votre aide car je suis bloqué sur un problème de macro.
Je souhaite faire un graphique en nuage de points avec 3 colonnes de données : une pour l'abscisse, une pour l'ordonnée, et une pour les légendes des points.

Excel ne laissant pas la possibilité de la troisième colonne en légende, j'ai trouvé une solution sur les forums de commentcamarche, une macro qui ajoute les légendes sur les points.

Le problème c'est que je souhaite ajouter un filtre.
En effet mon graphique de base comporte 200 points et avec les libellés, on ne voit plus rien...

J'ajoute donc une 4ème colonne et un filtre à ma base, mais là, la macro ne suit plus : elle garde les légendes des premières lignes et les applique à celles que le filtre sélectionne.

J'ai joint un excel pour plus de clarté :
http://we.tl/1KjL2pLQua

Je vous remercierais profondément si vous aviez une réponse sur ce sujet !

2 réponses

tontong Messages postés 2563 Date d'inscription mercredi 3 février 2010 Statut Membre Dernière intervention 17 octobre 2024 1 058
3 oct. 2014 à 19:12
Bonjour,
Avec la macro complémentaire xy chart labeller et un filtre automatique il n'ya apparement pas de problème.
http://appspro.com/Utilities/ChartLabeler.htm
Je n'ai pas vérifié avec la macro proposée par Jacques Boisgontier:
http://boisgontierjacques.free.fr/pages_site/graphiques.htm#EtiqNuage
1
cs_Ronan44 Messages postés 2 Date d'inscription mardi 9 décembre 2008 Statut Membre Dernière intervention 6 octobre 2014
Modifié par pijaku le 6/10/2014 à 10:50
Merci pour ta réponse tontong.
J'avais pensé à xy chart labeller mais malheureusement le problème est sur mon pc pro... sur lequel je ne peux pas installer de programmes évidemment.
Par contre je ne connaissais pas la page internet de J.Boisgontier et je ne vais pas m'en priver, merci pour ce filon !

En attendant on m'a donné une macro sur un autre forum qui fonctionne ! C'était la commande "SpecialCells(xlCellTypeVisible)" qui me manquait.

Pour ceux qui cherchent :

Dim Données As Range
Dim Noms As Range
Dim i

    Set Données = Sheets("Paramètres Graph").Range("$D$2:$E$203").SpecialCells(xlCellTypeVisible)
    Set Noms = Sheets("Paramètres Graph").Range("$C$2:$C$203").SpecialCells(xlCellTypeVisible)
    Sheets("Graph").ChartObjects("Graphique 1").Activate
    With ActiveChart.SeriesCollection(1)
        .ApplyDataLabels Type:=xlDataLabelsShowLabel
        For i = 1 To .Points.Count
            With .Points(i)
                .DataLabel.Text = Noms(i)
            End With
        Next i
    End With

End Sub

--
0