Créer un graphique sur VBA à partir d'excel
Bonjour à tous !
Je dois créer un graphique à partir d'un tableau excel, et je souhaiterai le faire sous VBA.
J'ai rédigé une macro qui fonctionne à partir d'un cours sur internet.
J'ai toutefois quelques interrogations :
En exécutant ma macro, deux classeurs apparaissent avec deux graphiques : l'un est un diagramme groupé, l'autre un diagramme empilé.
Je souhaite avoir uniquement un diagramme groupé.
Ma première question est donc la suivante : Comment se fait-il que ce deuxième digramme apparaissent, et comment le supprimer de ma macro ?
Deuxièmement, le nombre de colonnes de mon tableau est variable, je souhaiterais donc que ma macro sélectionne tout mon tableau sans que j'ai à indiquer la dernière cellule de ma plage (j'ai indiqué dans ma macro Cells(3,40)). Existe-t-il une formule permettant de sélectionner directement la "fin" du tableau ?
Enfin, mon diagramme empilé a les lignes et les colonnes inversées. Je dois donc cliquer sur le bouton "invertir les lignes et les colonnes" pour avoir le graphique voulu. Existe-t-il un code pour faire cette manipulation automatiquement sur VBA ?
Et une dernière question moins importantes : mon graphique apparait dans un nouveau classeur, est-il possible de demander à ma macro qu'il apparaissent dans ma feuille où figurent mes données sources ?
Je vous remercie tous d'avance !!! :)
Voici ma macro :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| Option Explicit
Public Sub Graphique()
Range("B1").CurrentRegion.Select 'mon tableau de données commence en B1
ThisWorkbook.Charts.Add
Dim objChart As Chart, objRange As Range
Dim WsF As Worksheet
Set WsF = Worksheets("Final") 'Feuille Source Final
Set objRange = WsF.Range(WsF.Cells(1, 2), WsF.Cells(3, 40))
Set objChart = ThisWorkbook.Charts.Add
objChart.ChartType = xlColumnStacked 'création d'un histogramme empilé
objChart.SetSourceData objRange, xlColumns
End Sub |
Merci d'avance !
Marie