Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

légende axe abscisse

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

D

djstroubi

Guest
Bonjour,

je souhaiterais savoir si il est possible que la valeur minimale sur l'axe des abscisse d' un graphique change automatiquement mais que c'est moi qui décide quelle est cette valeur.
C'est à dire que si je met par exemple 16:00 dans une cellule, automatiquement le graphique a comme valeur minimale en abscisse 16:00

cordialement
 
Re : légende axe abscisse

Bonjour djstroubi,

On suppose :

- que le graphique se nomme "Graphique 1" et qu'il se trouve dans la feuille de calcul,

- que le minimum de l'axe des abscisses (une heure) est entré en cellule D2.

La macro à placer dans le code de la feuille (clic droit sur l'onglet et Visualiser le code) :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$D$2" And IsDate(Target.Text) Then 'adapter au besoin
  ActiveSheet.ChartObjects("Graphique 1").Chart.Axes(xlCategory).MinimumScale = Target
End If
End Sub

Edit : j'ai testé sur un graphique en Nuage de points

A+
 
Dernière édition:
Re : légende axe abscisse

J'ai essayé sur un graphique tous simple mais je n'arrive pas a faire fonctionner la macro. Il me trouve une erreur

Et dans mon autre fichier si le graphique est dans une autre feuille de calcul séparée appellé graph lundi et que l'heure est dans la feuille lundi en [A75].

@+


 

Pièces jointes

Dernière modification par un modérateur:
Re : légende axe abscisse

Bonjour djstroubi,

Il s'agit d'un graphique Barres.

Sous Excel 2003 en tous cas, on ne peut pas manipuler le minimum de l'axe des abscisses 😡 il faut pour ça un graphique en Nuage de points.

A+
 
Re : légende axe abscisse

Re,

Bon, il y avait juste 2 modifications à faire pour adapter la macro :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$D$2" And IsDate(Target.Text) Then 'adapter au besoin
  ActiveSheet.ChartObjects("[COLOR="Red"]Graphique 2[/COLOR]").Chart.Axes([COLOR="Red"]xlValue[/COLOR]).MinimumScale = Target
End If
End Sub

A+
 

Pièces jointes

Re : légende axe abscisse

Re,

C'est parfait ca marche nikel
Cependant si j'ai plusieurs graphique sur une feuille séparés de la feuille de données qu'est ce que je doit modifier parce que j'ai essayer de bidouiler mais ca ne marche pas

a+

 
Re : légende axe abscisse

le code final au projet est le suivant

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim Graph As Object
Dim G As ChartObject
'La donnée horaire modifiable est placée sur une feuille "JourX" en D2
If Target.Address = "$D$2" And IsDate(Target.Text) Then
On Error Resume Next
Set Graph = Charts("graph " & Sh.Name)
'Si la feuille "graph JourX" existe...
If Not Graph Is Nothing Then
'... on modifie la valeur de départ en abscisse sur chaque graphique
With Graph
.Axes(xlValue).MinimumScale = Target
For Each G In .ChartObjects
G.Chart.Axes(xlValue).MinimumScale = Target
Next G
End With
End If
End If
End Sub

merci a tous ceux qui m'on aidé

cordialement
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
0
Affichages
190
Réponses
6
Affichages
451
Réponses
5
Affichages
559
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…