Erreur code VBA Excel 2003 à Excel 2007

Amoniks Messages postés 4 Date d'inscription jeudi 11 juin 2009 Statut Membre Dernière intervention 28 septembre 2009 - 28 sept. 2009 à 12:05
Amoniks Messages postés 4 Date d'inscription jeudi 11 juin 2009 Statut Membre Dernière intervention 28 septembre 2009 - 28 sept. 2009 à 12:08
Bonjour à tous,

J'ai aujourd'hui même converti un fichier 2003 pour en faire un fichier 2007...

Bien entendu tout cela s'est bien passé la conversion est bonne par contre dans mon fichier excel j'ai plusieurs Macro :
J'ai une feuille ou je saisie des données et par rapport aux données saisies ça me crée un graphique dans une deuxième feuille.

Le problème est que quand je fais mes saisies sur mon fichier excel (Fraichement converti pour 2007) j'ai une erreur :

Erreur d'exécution '1004'
Erreur définie par l'application ou par l'objet

Ensuite si je clique débogage je tombe sur ce code :

-----------------------------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim l As Integer
Dim i As Integer
If Target.Column = 5 And Target.Row > 16 Then
l = Target.Row
i = Int((l - 17) / 3) + 17
If i 17 And l 19 Then
Sheets("graphique dcltge").Select
ActiveSheet.ChartObjects("Chart 85").Activate
ActiveChart.Axes(xlCategory).Select
With ActiveChart.Axes(xlCategory)
.MinimumScale = Int(Sheets("Macro").Range("E" & i).Value)
.MaximumScale = Sheets("Macro").Range("E" & i).Value + 15
.MinorUnitIsAuto = True
.MajorUnitIsAuto = True
.Crosses = xlAutomatic
.ReversePlotOrder = False
.ScaleType = xlLinear
.DisplayUnit = xlNone
.HasDisplayUnitLabel = False
End With
ActiveChart.Axes(xlValue).Select
With ActiveChart.Axes(xlValue)
1 .MinimumScale = Range("Saisie!E15").Value + (Range("Saisie!F13").Value - 2) / 1000
.MaximumScale = Range("Saisie!E15").Value + (Range("Saisie!F11").Value + 2) / 1000
.MinorUnitIsAuto = True
.MajorUnitIsAuto = True
.Crosses = xlAutomatic
.ReversePlotOrder = False
.ScaleType = xlLinear
.DisplayUnit = xlNone
End With
Else
Sheets("Macro").Range("E" & i).Value = Now()
End If
End If
------------------------------------------------------------------

Et c'est cette ligne qui est affichée en jaune :

ActiveSheet.ChartObjects("Chart 85").Activate




Voilà mon problème ce que je ne comprend pas s'est surtout pourquoi est-ce que avec Excel 2003 j'arrive à ouvrir ce fichier et saisir des données corréctement et avoir mon graphique.. Et pas sur Excel 2007 ?

Merci de votre très précieuse aide...

1 réponse

Amoniks Messages postés 4 Date d'inscription jeudi 11 juin 2009 Statut Membre Dernière intervention 28 septembre 2009
28 sept. 2009 à 12:08
Oups petite erreur, ActiveSheet.ChartObjects("Chart 85").Activate est une modification de moi qui ne marche pas dans le code c'est bien :

ActiveSheet.ChartObjects("Graphique 85").Activate

Qui est inscrit.


Merci
0
Rejoignez-nous