Erreur en voulant générer un graphe

mimoz2 Messages postés 16 Date d'inscription   Statut Membre Dernière intervention   -  
mimoz2 Messages postés 16 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,

Je sollicite aujourd'hui votre aide car je suis bloquée sur un code me permettant de générer un graphe en automatique. En effet, l'erreur 91 "variable objet ou variable de bloc with non définie" ne fait qu’apparaître à l'écran. J'ai tenté plein de manips mais rien n'y fait !

J'espère que vous pourrez m'aider, merci beaucoup par avance !

Mon code est le suivant :

Private Sub CommandButton21_Click()

Dim ShTemp As Worksheet, ShGraphe As Worksheet
Dim fin_A As range, fin_B As range
Dim select_A As range, select_B As range

Windows("Outil_V1.xlsm").Activate
Workbooks("Outil_V1.xlsm").Activate

Set ShTemp = Workbooks("Outil_V1.xlsm").Sheets("dataTemp")
Set ShGraphe = Workbooks("Outil_V1.xlsm").Sheets("GRAPHE")

(l'erreur se localise ici)

fin_A = range("A65536").End(xlUp).Row
select_A = range("A2" & ":" & "A" & fin_A).Select

fin_B = range("B" & Rows.Count).End(xlUp).Row
select_B = range("B2" & ":" & "B" & fin_B).Select

ShTemp.Shapes.AddChart.Select
ActiveChart.ChartType = xlLine
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(1).Values = "=dataTemp!select_B"
ActiveChart.SeriesCollection(1).XValues = "=dataTemp!select_A"

2 réponses

michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
Bonjour
fin_A = range("A65536").End(xlUp).Row 
select_A = range("A2" & ":" & "A" & fin_A).Select

fin_B = range("B" & Rows.Count).End(xlUp).Row
select_B = range("B2" & ":" & "B" & fin_B).Select


Sur quelle(s) feuille(s):shtemp,shgraphe?
0
mimoz2 Messages postés 16 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour,

Merci pour votre aide, shtemp se situe sur la feuille 4 et shgraphe sur la feuill 3.
0
mimoz2 Messages postés 16 Date d'inscription   Statut Membre Dernière intervention  
 
En ratravaillant mon code j'ai pensée à faire ça :

Private Sub CommandButton21_Click()

'Definition des variables utilisees dans le code
Dim ShTemp As Worksheet, ShGraphe As Worksheet
Dim select_A() As Integer, select_B() As Integer
Dim fin_col As Long
Dim maPlage As range

'Activation des feuilles à utiliser
Windows("Outil_V1.xlsm").Activate
Workbooks("Outil_V1.xlsm").Activate

'Definition des environnements de travail
Set ShTemp = Workbooks("Outil_V1.xlsm").Sheets("dataTemp")
Set ShGraphe = Workbooks("Outil_V1.xlsm").Sheets("GRAPHE")

'Activation de la feuille graphe et suppression des anciennes données présentes dans l'onglet Graphe
ShGraphe.Activate
For Each Legraph In ActiveSheet.ChartObjects
Legraph.Delete
Next

'Selection de la derniere ligne utilisée
ShTemp.Activate
fin_col = ShGraphe.range("B2").End(xlDown).Row
'Set maPlage = range("B2" & fin_col)

'Création graphique
ShGraphe.Activate
Charts.Add
'Définit la localisation du graphique dans la feuille de calcul GRAPHE
ActiveChart.Location _
Where:=xlLocationAsObject, Name:="GRAPHE"

'Selection des colonnes à considerer
For i = 2 To fin_col
select_A(i) = range("A" & i).Value
select_B(i) = range("B" & i).Value
Next

'Ajoute une série dans le graphique
With ActiveChart
.SeriesCollection.NewSeries
.SeriesCollection(1).XValues = select_A() 'Abscisses
.SeriesCollection(1).Values = select_B() 'Ordonnées
'Définit le type (Courbe)
.ChartType = xlLine
End With

Seulement, une erreur apparait me disant "l'indice n'appartient pas à la sélection"
0