Mise à jour automatique graphique par changement de cellule par curseur

  • Initiateur de la discussion Initiateur de la discussion techie59
  • 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 !

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. 😕

Etienne
 

Pièces jointes

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

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

Dernière édition:
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!!! 😛

Etienne
 
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.
 
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!!! 😛

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

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!!! 😛

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.
 
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

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
 
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.
 
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

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
 
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.
 
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

- 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

Retour