Excel VBA pour modifier la taille, la couleur et la transparence du marché sur un parcours radar

Je suis blindé par VBA lors de la tentative d'atsortingbuer un niveau de transparence et de transparence personnalisé sur un diagramme radar. J'ai lu qu'il y a des problèmes avec l'ordre, mais peu importe où j'essaie le paramètre .transparency, j'ai l'erreur suivante: l'object ne prend pas en charge cette propriété ou cette méthode.

Si je commente la ligne .transparency dans le code suivant, je reçois un excellent diagramme de radar avec des marqueurs colorés par des valeurs dans rngColors. J'aimerais simplement les rendre transparents, de sorte que les plots de ligne sous-jacentes se produisent aussi. Toute aide ou conseil serait grandement apprécié.

Cordialement, Adam

Sub colorPoints() 'Must select chart when running macro Dim x As Long Dim rngColors As Range Set rngColors = Range("H8:H57") 'set range of RGB color For x = 1 To ActiveChart.SeriesCollection(1).Points.Count With ActiveChart.SeriesCollection(1).Points(x) .Format.Fill.Solid .MarkerBackgroundColor = RGB(212, 142, rngColors(x)) .transparency = 0.5 <-Error: 'Object doesn't support this property or method.' End With Next End Sub 

EDIT: Merci pour le lien dans les commentaires, le code suivant a fonctionné pour moi lorsqu'il est exécuté comme une macro distincte après avoir assigné la couleur. C'est délicat cependant, et je ne sais pas pourquoi. Tout d'abord, je dois exécuter le code de transparence (ci-dessous), puis commenter .Solid, puis exécuter le code de couleur (ci-dessus), puis le code de transparence (ci-dessous), alors il fonctionne. Yikes! Je ne suis pas trop préoccupé par l'optimization maintenant, mais cela semble fonctionner régulièrement:

 Sub transcheck() ' transcheck Macro Dim cht As Chart Dim Ser As Series Dim lngIndex As Long Dim lngChartType As XlChartType Set cht = ActiveSheet.ChartObjects(1).Chart Set Ser = cht.SeriesCollection(1) lngChartType = Ser.ChartType Ser.ChartType = xlColumnClustered For lngIndex = 1 To 50 With Ser.Format.Fill .Solid .Visible = True .transparency = 0.5 End With Ser.ChartType = lngChartType Next End Sub 

Les informations que j'ai trouvées ont une syntaxe appropriée de .Format.Fill.Transparency = 0.5 http://answers.microsoft.com/en-us/office/forum/office_2007-excel/macro-to-change-the-transparency-of- marqueurs-dans-a / 6a9964a7-30ad-4412-a48f-2334e4ecd63d

Bien qu'il existe une discussion sur les bogues avec ce encoding en fonction de votre version Excel: http://www.mediafire.com/file/j2tnzlcizzm/05_09_10b.pdf