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

E

eddy13t

Guest
Bonsoir, voila je rencontre un problème avec la création de graphiques à l'aide d'une macro. En faite ce que je veux faire c'est créer des feuilles avec des noms différents et avec des tableaux dessus. Le problème c'est que quand j'enregistre ma macro sur "feuil1" par exemple, le code va identifier la feuil 1 plusieurs fois et quand je vais mettre un bouton sur la feuil2 et l'affecter à cette macro créer avec la feuil 1 il va menvoyer le débogage --> logique. Ma question est comment faire du nom de la feuille une variable...qui change en fonction du nom de la feuille sur laquelle est le bouton..

Merci d'avance ^^
 
Re : macro grahique

Voila par exemple j'ai en feuil1 une macro qui me créer le graphique mais avec la feuille 1 et que je veux faire pareil sur la feuil2 ça marchera pas, comment je peux faire apparaître le nom de la feuille comme une variable de maniere à ce que sur nimporte quelle feuille la macro marche???
 

Pièces jointes

Re : macro grahique

Bonsoir eddy13t
Essayez ainsi :
Code:
[COLOR="DarkSlateGray"][B]Sub Macro2()
Dim aSh As String
    aSh = ActiveSheet.Name
    Charts.Add
    ActiveChart.ChartType = xlLine
    ActiveChart.SetSourceData Source:=Sheets(aSh).Range("I30")
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection.NewSeries
    ActiveChart.SeriesCollection(1).XValues = _
        "=(" & aSh & "!R13C4:R13C15," & aSh & "!R20C4:R20C15)"
    ActiveChart.SeriesCollection(1).Values = "=" & aSh & "!R14C3:R14C15"
    ActiveChart.SeriesCollection(2).Values = _
        "=(" & aSh & "!R15C3:R15C15," & aSh & "!R22C4:R22C15)"
    ActiveChart.SeriesCollection(3).Values = _
        "=(" & aSh & "!R16C3:R16C15," & aSh & "!R23C3:R23C15)"
    ActiveChart.SeriesCollection(4).Values = _
        "=(" & aSh & "!R17C3:R17C15," & aSh & "!R24C3:R24C15)"
    ActiveChart.Location Where:=xlLocationAsObject, Name:=aSh
    With ActiveChart
        .HasTitle = False
        .Axes(xlCategory, xlPrimary).HasTitle = False
        .Axes(xlValue, xlPrimary).HasTitle = False
    End With
End Sub[/B][/COLOR]
ROGER2327
#2169
 
Re : macro grahique

Bonjour
Je pense que cela doit fonctionner aussi??
HTML:
Sub Macro1()
Dim TEST
    TEST = ActiveSheet.Name
    Charts.Add
    ActiveChart.ChartType = xlLine
    ActiveChart.SetSourceData Source:=Sheets(TEST).Range("C13:O17"), PlotBy:=xlRows
    ActiveChart.Location Where:=xlLocationAsObject, Name:=(TEST)
End Sub
 
- 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
4
Affichages
333
Réponses
18
Affichages
619
Réponses
4
Affichages
586
Réponses
5
Affichages
551
  • Question Question
Microsoft 365 affichage userform
Réponses
4
Affichages
523
Retour