Erreur 1004 macro pour un graphique

heislsim

XLDnaute Junior
Bonjour tout le monde,


J'ai une erreur qui est apparu dans une macro mais je ne comprends pas trop pourquoi et surtout comment la résoudre.
Le but de la macro est d'ajuster automatiquement la plage de donnée pour que l'échelle de mes graphiques soient la meilleur possible.
J'ai fait des changement depuis le moment à ça marchait à savoir :
- Supression de graphique n°5 et 8
- Décalage des colonnes de données après la C (j'ai rajouté une colonne après du coup tout devait être décalé. Normalement j'ai rectifié dans ma macro ceci mais j'ai toujours le même message d'erreur.

Voici l'erreur : Erreur d'exécution '1004' : Erreur définie par l'application ou par l'objet en me surlignant cette partie : Set CH = s.ChartObjects(z&) en début de code

Voici le code :

Code:
Sub test()

Sheets("ZE RI").Select
Set s = ActiveSheet
For z& = 1 To 7
  Set CH = s.ChartObjects(z&)
  Select Case z&                                                ' Case 5 est absent car graphique supprimé'
    Case 1
      Set R = s.Range("$H$3:$H$" & s.[H3].End(xlDown).Row)
      a$ = "=SERIES(,'" & s.Name & "'!" & R.Address & _
         ",'" & s.Name & "'!" & R.Offset(0, 1).Address & ",1)"
      CH.Chart.SeriesCollection(1).Formula = a$
    Case 2
      Set R = s.Range("$A$3:$A$" & s.[A3].End(xlDown).Row)
      a$ = "=SERIES(,'" & s.Name & "'!" & R.Address & _
         ",'" & s.Name & "'!" & R.Offset(0, 1).Address & ",1)"
      CH.Chart.SeriesCollection(1).Formula = a$
    Case 3
      Set R = s.Range("$C$3:$C$" & s.[C3].End(xlDown).Row)
      a$ = "=SERIES(,,'" & s.Name & "'!" & R.Address & ",1)"
      CH.Chart.SeriesCollection(1).Formula = a$
    Case 4
      Set R = s.Range("$J$3:$J$" & s.[I3].End(xlDown).Row)
      a$ = "=SERIES(,,'" & s.Name & "'!" & R.Address & ",1)"
      CH.Chart.SeriesCollection(1).Formula = a$
    Case 6
      Set R = s.Range("$H$3:$H$" & s.[H3].End(xlDown).Row)
      a$ = "=SERIES(,,'" & s.Name & "'!" & R.Address & ",1)"
      CH.Chart.SeriesCollection(1).Formula = a$
    Case 7
      Set R = s.Range("$A$3:$A$" & s.[A3].End(xlDown).Row)
      a$ = "=SERIES(,'" & s.Name & "'!" & R.Address & _
         ",'" & s.Name & "'!" & R.Offset(0, 1).Address & ",1)"
      CH.Chart.SeriesCollection(1).Formula = a$
  End Select
Next z&
End Sub

Et voici en gros le même code qui marche :

Code:
Sheets("ZN 2 Retour").Select
Set s = ActiveSheet
For z& = 1 To 3
  Set CH = s.ChartObjects(z&)
  Select Case z&
    Case 1
      Set R = s.Range("$A$3:$A$" & s.[A3].End(xlDown).Row)
      a$ = "=SERIES(,'" & s.Name & "'!" & R.Address & _
         ",'" & s.Name & "'!" & R.Offset(0, 1).Address & ",1)"
      CH.Chart.SeriesCollection(1).Formula = a$
    Case 2
      Set R = s.Range("$C$3:$C$" & s.[C3].End(xlDown).Row)
      a$ = "=SERIES(,,'" & s.Name & "'!" & R.Address & ",1)"
      CH.Chart.SeriesCollection(1).Formula = a$
    Case 3
      Set R = s.Range("$A$3:$A$" & s.[A3].End(xlDown).Row)
      a$ = "=SERIES(,,'" & s.Name & "'!" & R.Address & ",1)"
      CH.Chart.SeriesCollection(1).Formula = a$
  End Select
Next z&
[a1].Select

Quelqu'un à une idée du problème ?? :-(

Simon

PS : Sorry pour la gueule des macro il y a pas mal de bricolage dedans ...
 

camarchepas

XLDnaute Barbatruc
Re : Erreur 1004 macro pour un graphique

Bonjour ,

Pas de fichier support , donc pas de tests possibles,

Remarque : Essaies de lire la charte de Xld

Remarque2 : Eventuellement regardes pour mettre un nom de variable correct au niveau de la boucle , et une déclaration peut ne pas faire de mal
 

Discussions similaires

Réponses
1
Affichages
164
Réponses
0
Affichages
148
Réponses
7
Affichages
318

Statistiques des forums

Discussions
312 182
Messages
2 086 003
Membres
103 084
dernier inscrit
Hervé30120