XL 2010 VBA - PROBLEME AVEC xx = Right(ActiveChart.Name, Len

kaisermpt

XLDnaute Occasionnel
Bonjour,

j'utilise une macro pour réaliser des graphiques et ensuite les mettre sur un onglet d'Excel.

cette opération doit se réaliser sur une vingtaine d'onglet, cependant je rencontre un problème avec le code ci-dessous lorsque je passe à la feuil10 de excel

Avec les feuil1 à feuil9, ca marche bien.

Pourriez vous m'aider dans la résolution de ce problème

xx = Right(ActiveChart.Name, Len(ActiveChart.Name) - 7)
ActiveSheet.ChartObjects(xx).Activate

Merci d'avance

sebastien
 

Yurperqod

XLDnaute Occasionnel
Bonjour à tous

Voici un exemple pour boucler sur toutes les feuilles d'un classeur avec un graphique par feuille
VB:
Sub MacroTest()
  Dim ws As Worksheet
  For Each ws In Worksheets
  MsgBox ws.Name & vbCrLf & _
  ws.ChartObjects(ws.ChartObjects.Count).Chart.Parent.Name
  Next
End Sub
 

Yurperqod

XLDnaute Occasionnel
Avec une boucle de plus, est-ce que c'est bon ?
VB:
Sub MacroTest2()
Dim ws As Worksheet, i As Long
For Each ws In Worksheets
If ws.ChartObjects.Count > 0 Then
  For i = 1 To ws.ChartObjects.Count
  MsgBox ws.Name & vbCrLf & _
  ws.ChartObjects(i).Chart.Parent.Name
  Next i
End If
Next ws
End Sub
 

Discussions similaires