Mise à jour automatique graphique par changement de cellule par curseur

techie59

XLDnaute Nouveau
Bonjour tout le monde,

Je vais poser une question existante je pense mais impossible de remettre la main sur la réponse malgré ma recherche dans le forum.
J'ai inclus un fichier afin d'expliquer mon problème.

J'ai un tableau qui va regrouper un nombre de ligne assez important (environ 3000) qui représentent des données de stock, production et demand pour chacun des articles. Le but est de faire une réunion pour analyser les articles un par un par rapport au graphique représenté (je sais, cela risque d'être un long meeting).

Donc, je souhaite que le graphique, son titre et éventuellement les échelles des axes se mettent automatiquement à jour en fonction de la position du curseur sur un article donné. En clair, je souhaite pouvoir descendre la liste article par article en appuyant sur la flèche "bas" de mon clavier et pour chaque article, le graphique se met automatiquement à jour en fonction des données propres à l'article.

Merci d'avance pour votre aide. :confused:

Etienne
 

Pièces jointes

  • Example1.xlsx
    11.8 KB · Affichages: 111
J

JJ1

Guest
Re : Mise à jour automatique graphique par changement de cellule par curseur

Bonjour Techie59,
En attendant un spécialiste de fonction personnalisée pour le curseur, j'ai fait simple par une recherche en A2 te donnant le graphe correspondant.
En changeant A2, le graphe change.

Bonne soirée
 

Pièces jointes

  • Copie de Example1.xlsx
    11.4 KB · Affichages: 138

Papou-net

XLDnaute Barbatruc
Re : Mise à jour automatique graphique par changement de cellule par curseur

Bonjour techie59,

Voici une solution à ton problème.

A une nuance près : le défilement des graphiques se fait au moyen de la barre d'ascenseur que j'ai ajoutée sur la droite.

Espérant avoir répondu.

Cordialement.

Oups ! bonjour JJ1.
 

Pièces jointes

  • Copie de Example1.xlsm
    25.5 KB · Affichages: 140
Dernière édition:

chris

XLDnaute Barbatruc
Re : Mise à jour automatique graphique par changement de cellule par curseur

Bonjour à tous

Ci-joins une solution où le graphique s'adapte en fonction de la cellule active en colonne A.
 

Pièces jointes

  • Example1.xlsm
    17.8 KB · Affichages: 174
  • Example1.xlsm
    17.8 KB · Affichages: 182
  • Example1.xlsm
    17.8 KB · Affichages: 183

techie59

XLDnaute Nouveau
Re : Mise à jour automatique graphique par changement de cellule par curseur

Merci beaucoup à tous. C'est exactement ce que je cherchais comme résultat. Par contre, la solution passe par une macro uniquement ou alors il faut aussi modifier le graphique?

Je pose la question pour savoir re-créer le fichier plus tard. Merci d'avance pour votre aide. Trop rapide!!! :p

Etienne
 

techie59

XLDnaute Nouveau
Re : Mise à jour automatique graphique par changement de cellule par curseur

Merci Papou-net, c'est aussi une méthode intéressante pour faire défiler les articles. Cela risque juste d'être un peu long si on veut aller sur un article spécifique mais merci beaucoup pour ton aide.
 

Papou-net

XLDnaute Barbatruc
Re : Mise à jour automatique graphique par changement de cellule par curseur

Merci beaucoup à tous. C'est exactement ce que je cherchais comme résultat. Par contre, la solution passe par une macro uniquement ou alors il faut aussi modifier le graphique?

Je pose la question pour savoir re-créer le fichier plus tard. Merci d'avance pour votre aide. Trop rapide!!! :p

Etienne

Re : Etienne,

Pour ma solution, oui ça passe par une macro que voici :

Code:
Private Sub ScrollBar1_Change()
Dim Lg As Long
With ScrollBar1
  .Min = 4
  .Max = Feuil1.Range("A" & Rows.Count).End(xlUp).Row
End With
Lg = ScrollBar1.Value
ActiveSheet.ChartObjects("Graphique 2").Activate
ActiveChart.ChartTitle.Text = Feuil1.Cells(Lg, 2)
ActiveChart.SeriesCollection(1).Values = "=Feuil1!$C$" & Lg & ":$H$" & Lg
ActiveChart.SeriesCollection(2).Values = "=Feuil1!$J$" & Lg & ":$O$" & Lg
ActiveChart.SeriesCollection(3).Values = "=Feuil1!$Q$" & Lg & ":$V$" & Lg
End Sub
Cette macro est attachée à l'ascenseur et se déclenche lorsque tu fais varier la position du curseur.

Si tu rajoutes des lignes à ta feuille de calcul, et tant que tu ne dérangeras pas les colonnes, la macro s'adaptera automatiquement.

Je me suis aperçu d'une petite erreur dans la définition des zones de données.

Je te transmets donc le fichier modifié.

Cordialement.
 

Pièces jointes

  • Copie de Example2.xlsm
    23.4 KB · Affichages: 76

chris

XLDnaute Barbatruc
Re : Mise à jour automatique graphique par changement de cellule par curseur

Bonjour

Merci beaucoup à tous. C'est exactement ce que je cherchais comme résultat. Par contre, la solution passe par une macro uniquement ou alors il faut aussi modifier le graphique?

Je pose la question pour savoir re-créer le fichier plus tard. Merci d'avance pour votre aide. Trop rapide!!! :p

Etienne
Pour ma solution comme indiqué dan le fichier il y a des noms et le graphique est basé sur ces noms, plus une macro qui détecte le changement de sélection dans le module de la feuille.
 

Papou-net

XLDnaute Barbatruc
Re : Mise à jour automatique graphique par changement de cellule par curseur

Merci Papou-net, c'est aussi une méthode intéressante pour faire défiler les articles. Cela risque juste d'être un peu long si on veut aller sur un article spécifique mais merci beaucoup pour ton aide.

Voici une version modifiée : un simple clic sur le titre du menu affiche un liste déroulante. ais tu peux tout aussi bien saisir directement le titre du graphique à afficher. Cela peut améliorer la vitesse du choix. Les flèches d'ascenseur restent opérationnelles.

Cordialement.
 

Pièces jointes

  • Copie de Example3.xlsm
    27 KB · Affichages: 81

techie59

XLDnaute Nouveau
Re : Mise à jour automatique graphique par changement de cellule par curseur

Encore un grand merci à Papou-net.

Je me permets de revenir sur la solution de Chris, est-il possible d'avoir le code source car il semble bloqué par un mot de passe (sauf erreur de ma part)?

Merci d'avance,

Etienne
 

Papou-net

XLDnaute Barbatruc
Re : Mise à jour automatique graphique par changement de cellule par curseur

Bonjour techie59, Chris, JJ1, le forum,

Le code de Chris n'est pas protégé, la preuve :

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
       If Target.Column = 1 And Target.Row > 3 And Target.Count = 1 And Target <> "" Then
        ThisWorkbook.Names("x").Value = "=" & Target.Row - 3
    End If
End Sub
Toutefois, si je puis me permettre et sans vouloir froisser Chris, j'ai relevé une erreur d'exécution 13 (Incompatibilité de type) lorsqu'on sélectionne plusieurs cellules, malgré la condition Target.Count = 1.

Une solution pour y remédier :

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
       If Target.Column = 1 And Target.Row > 3 And Target.Count = 1 Then
           If Target.Value <> "" Then ThisWorkbook.Names("x").Value = "=" & Target.Row - 3
    End If
End Sub
Bises à Chris.
Amicalement à tous.
 

Papou-net

XLDnaute Barbatruc
Re : Mise à jour automatique graphique par changement de cellule par curseur

Voici une version, encore améliorée, de ton fichier.

Tu peux maintenant sélectionner ton graphique selon différentes méthodes :

- Clic sur la barre de titre affiche une liste déroulante dans la barre de titre du graphique

- Clic sur les flèches d'ascenseur font défiler les graphiques

- Clic maintenu sur le curseur de l'ascenseur font défiler les titres de graphiques dans la barre de titre et le graphique correspondant s'affiche au relâcher du bouton de souris

- Cerise sur le gâteau : clic dans le tableau de données affiche le graphique, à la méthode de Chris mais pas limité à la colonne A.

Si avec ça tu ne trouves pas la solution la plus rapide...

Cordialement.
 

Pièces jointes

  • Copie de Example4.xlsm
    29 KB · Affichages: 80

jeffe

XLDnaute Impliqué
Re : Mise à jour automatique graphique par changement de cellule par curseur

bonjour le forum, Papou-net, chris, techie59,
voila vos propositions semblent très interressantes mais voila sur ma version2000 cela ne fonctionne pas . j'ai bien recreé la scrolbare, la combobox.. mais rien ni fait. dans la conversion, les listes disparaissent.
si vous aviez une piste je serai preneur
merci
 

Papou-net

XLDnaute Barbatruc
Re : Mise à jour automatique graphique par changement de cellule par curseur

Bonjour jeffe,

Il y a de grosses différences dans la gestion des graphiques entre les versions précédentes d'Excel et les plus récentes.

Le mieux serait que tu joignes une copie de ton fichier sur ce fil pour voir ce qu'il est possible de faire.

A +.

Cordialement.
 

jeffe

XLDnaute Impliqué
Re : Mise à jour automatique graphique par changement de cellule par curseur

Papou-net, en fait la dernière version que tu proposes, dans l'idée me parait très bien pour selectionner des datas. C'était purement à titre informatif.
j'utilise dans certains cas la fonction decaller pour representer les données dans mes graphs. Voila c'était juste pour garder l'idée de choix.
voici ton fichier j'ai simplement effacé la combo et scrolbar et repositionné des nouvelles avec le meme nom.
au cas ou
merci
 

Pièces jointes

  • graphpapounet-V4.xls
    46 KB · Affichages: 85

Discussions similaires

Statistiques des forums

Discussions
312 622
Messages
2 090 273
Membres
104 479
dernier inscrit
Guengant