Re: légende axe abscisse
#11
Aspirant XLPages

Inscription: 15/09/2009

Messages: 28

Système d'exploitation:
PC
Version Excel utilisée:
2007
Posté le : 21-09-2009 14h51
Re,

Le code marche très bien mais si j'ai plusieurs graphique sur la page "graph lundi" le code active qu'un seul graphique.

et si j'ai une page graph pour chaque jour de la semaine est ce que je fait un code pour chaque jour dans worksheet.

merci
Hors Ligne
Rapport   Haut 

Re: légende axe abscisse
#12
Webmestre

Inscription: 18/05/2006
De Saône-et-Loire (71)

Messages: 1539

Système d'exploitation:
PC
Version Excel utilisée:
97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365
Posté le : 22-09-2009 21h38
Bonsoir djstroubi, le Forum,

Si la feuille "graph lundi" contient plusieurs graphiques, tu peux modifier le code (contenu dans ThisWorkbook) comme suit :

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim G As ChartObject
    'La donnée horaire modifiable est placée en feuille "lundi", cellule D2
    If Sh.Name = "lundi" And Target.Address = "$D$2" And IsDate(Target.Text) Then
        'Les graphiques sont créés directement sur une sheet de type Graph nommée "graph lundi"
        With Charts("graph lundi")
            .Axes(xlValue).MinimumScale = Target
            For Each G In .ChartObjects
                G.Chart.Axes(xlValue).MinimumScale = Target
            Next G
        End With
    End If
End Sub
Merci de joindre un fichier exemple reflétant le cas exposé dans ta question la prochaine fois...

Cordialement,

Didier_mDF
Image redimensionnée
Le Webmaster

La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien
Hors Ligne
Rapport   Haut 

Re: légende axe abscisse
#13
Aspirant XLPages

Inscription: 15/09/2009

Messages: 28

Système d'exploitation:
PC
Version Excel utilisée:
2007
Posté le : 23-09-2009 13h01
Bonsoir Mdf, le forum,

Ca marche parfaitement et j'ai essayé de m'exercer en cherchant une solution pour activer ce code sur d'autres pages. J'ai essayé avec workbook.charts mais ce ne fonctionne pas. Je t'ai mis un exemple.

merci
Pièce jointe:
xls légennde.xls   [ Taille: 50.00 Ko - Téléchargements: 570 ]
Hors Ligne
Rapport   Haut 

Re: légende axe abscisse
#14
Webmestre

Inscription: 18/05/2006
De Saône-et-Loire (71)

Messages: 1539

Système d'exploitation:
PC
Version Excel utilisée:
97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365
Posté le : 23-09-2009 21h36
Bonsoir djstroubi, le Forum,

En partant toujours de la même procédure :
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

Attention toutefois
:
Ce code est sensible à la casse : si la feuille contenant la donnée modifiable se nomme par exemple "mercredi", le graph correspondant doit obligatoirement se nommer "graph mercredi" ! (et NON "graph Mercredi" ou "graph MERCREDI" etc...)

Cordialement,

Didier_mDF
Image redimensionnée
Le Webmaster

La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien
Hors Ligne
Rapport   Haut 

Re: légende axe abscisse
#15
Aspirant XLPages

Inscription: 15/09/2009

Messages: 28

Système d'exploitation:
PC
Version Excel utilisée:
2007
Posté le : 23-09-2009 22h21
Re mdf, le forum,

merci beaucoup c'est parfait

cordialement
Hors Ligne
Rapport   Haut 

Légende axe abscisse
#16
Débutant XLPages

Inscription: 17/05/2011

Messages: 1

Système d'exploitation:
PC
Version Excel utilisée:
2007
Posté le : 17-05-2011 15h31
Bonjour Didier_MdF, le Forum,

Je fais revivre ce post...

Je suis dans le même type de situation que mdf et tu es visiblement la personne dont j'ai besoin. Je m'explique.

J'ai un fichier excel 2007 contenant plusieurs feuilles. La première est une feuille de saisie qui agit sur toutes les autres feuilles. Je souhaiterais inscrire dans cette feuille de saisie une valeur qui serait automatiquement la valeur minimale de l'axe d'un graphique (Chart 9) situé en feuille 2,3,4...
Je ne sais pas si ça a une importance mais mon graphique est un graphique en bulle.

Comment est ce possible ?
Je n'ai jamais utilisé le VB, bien que ça ne soit quand même pas du chinois pour moi.

Merci pour ton aide.

Calu

Hors Ligne
Rapport   Haut 


Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Qui consulte actuellement ce sujet ?   1 Utilisateur(s) anonymes