Problème VBA : range ne fonctionne pas dans userform main uniquement dans macro

Signaler
Messages postés
3
Date d'inscription
dimanche 27 septembre 2009
Statut
Membre
Dernière intervention
12 octobre 2009
-
Messages postés
3
Date d'inscription
dimanche 27 septembre 2009
Statut
Membre
Dernière intervention
12 octobre 2009
-
Bonjour,

Le code suivant concernant le range fonctionne dans une macro et pas dans une userform :

Charts.Add
ActiveChart.ChartType = xlPie
ActiveChart.SetSourceData Source:=Sheets("cmd consolidées").Range("B1:J1,B3:J3"), PlotBy:=xlRows
.....

Pourriez-vous m'aider SVP ?

Merci d'avance,

4 réponses

Messages postés
2065
Date d'inscription
lundi 11 avril 2005
Statut
Membre
Dernière intervention
14 mars 2016
8
Bonjour,

Ma première idée, c'est que tu ne pointes pas sur une feuille ou le classeur les fonctions présentées... voilà ma piste de réflexion...

Amicalement,
Us.
Messages postés
3
Date d'inscription
dimanche 27 septembre 2009
Statut
Membre
Dernière intervention
12 octobre 2009

Ce n'est pas un problème de pointage de feuille ou de range dans la mesure ou si j'indique un range simple, cela fonctionne :

Charts.Add
ActiveChart.ChartType = xlPie
ActiveChart.SetSourceData Source:=Sheets("cmd consolidées").Range("B1:J2"), PlotBy:=xlRows
.....


As-tu une autre idée ?
Messages postés
3
Date d'inscription
dimanche 20 janvier 2008
Statut
Membre
Dernière intervention
5 juillet 2010

Bonjour,

Juste un truc: je déclare toujours tous les objets Excel. Exemple:
<<
[i]Dim MyBook As WorkBook
Dim MySheet As WorkSheet
Set MyBook = ActiveWorkbook
Set MySheet = MyBook.Sheets(1)
/i>>

de la même façon je déclare les "range":
<<
[i]Dim Range1 As Range
Dim Range2 As Range
Dim Range3 As Range
Set Range1 = MySheet.Range("A1")
Set Range2 = MySheet.Range("C14")
Set Range3 = MySheet.Range(Range1, Range2)
/i>>

de cette façon je ne rencontre pas ton problème...
Messages postés
3
Date d'inscription
dimanche 27 septembre 2009
Statut
Membre
Dernière intervention
12 octobre 2009

Merci pour ta réponse. Je pense effectivement que c'est un problème aléatoire qui se rencontre lorsqu'on ne réserve pas la mémoire (donc lorsqu'on ne déclare pas tous les objets)