macro dans plusieurs calsseurs...

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

Y

yoord

Guest
Bonjour,
J'ai réalisé une macro qui permet de faire des graphiques (pas très compliqué).
j'ai mis cette macro en tant que macro complémentaire, et je l'appelle via un bouton-macro dans ma barre d'outil.

Seulement, la macro plante lorsque je choisit l'axe des abscisses pour mon graphique.
Le hic, c'est que la macro fonctionne très bien dans le classeur ou je l'ai créée, mais cette partie du code ne fonctionne pas des lorsque je souhaite l'utiliser dans un autre classeur.
Nul part dans mon code je ne fais référence au nom du classeur, ou au nom de la feuille. J'utilise toujours activeworkbook ou activesheet, activesheet.name etc...

le code plante ici :



Code:
for i = 1 to cc
If graph <> xlPie Then
ActiveChart.SeriesCollection(i).XValues = "=" & ActiveSheet.Name & "!R" & lig - 1 & "C" & col + 1 & ":R" & lig - 1 & "C" & col2
End If
Next i


cc est un nombre strictement positif, renvoyant au nombre de variables.
et je ne vois pas pourquoi...
j'ai l'erreur suivante :
Code:
impossibilité de définir la propriété XValues de la classe Series
 
Re : macro dans plusieurs calsseurs...

Bonjour,

A tout hasard, essayez avec le code modifié ci-dessous

Code:
For i = 1 To cc
If graph <> xlPie Then
ActiveSheet.ChartObjects(graph.Parent.Name).Activate
ActiveChart.SeriesCollection(i).XValues = "=" & ActiveSheet.Name & "!R" & lig - 1 & "C" & col + 1 & ":R" & lig - 1 & "C" & col2
End If
Next i

Cordialement.

PMO
Patrick Morange
 
Re : macro dans plusieurs calsseurs...

Bonjour,

ton code ne fonctionne pas, j'ai un message d'erreur avec le
Code:
 graph [CODE]

j'ai néanmoins pu solutionner mon problème.
Lorsque l'on appelle une feuille, Excel a besoin d'avoir le nom de cette feuille entre '  '  .
Or, lorsque cette feuille porte le nom par défaut : Feuil1 Feuil2 etc... ces petits guillemets ne sont pas nécessaires.

Mes graphiques ne fonctionnaient pas justement dans des feuilles qui avaient été renommées.
Il suffit de rajouter les '  ' autour de Activesheet.Name et ca fonctionne !

[CODE]for i = 1 to cc
If graph <> xlPie Then
ActiveChart.SeriesCollection(i).XValues = "='" & ActiveSheet.Name & "'!R" & lig - 1 & "C" & col + 1 & ":R" & lig - 1 & "C" & col2
End If
Next i


Merci en tout cas pour ton aide.

Yoord
 
- 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
9
Affichages
864
J
  • Question Question
Réponses
26
Affichages
2 K
L
Réponses
8
Affichages
1 K
A
Réponses
12
Affichages
2 K
AnjyD
A
Réponses
3
Affichages
1 K
C
Réponses
1
Affichages
1 K
Cattleya97
C
S
Réponses
17
Affichages
3 K
K
Réponses
9
Affichages
1 K
Retour