用2种不同的types在VBA中创build一个图表

这可能是一个基本的问题,但我一直很难find一个好的解决scheme,我的问题。

我正在尝试在VBA中以编程方式创build图表。 图表需要有3个系列,其中2个系列是xlColumnStacked,1个系列是xlColumnClustered。 这个想法是有1个系列是xlColumnClusteredtypes,而另外两个是堆叠的。 这将导致两列的并排比较。

这可能吗?

我试图改变每个系列types,但是结果是整个图表types将根据最后一个被更改的系列而改变。 (例如 – >最后添加的系列是xlStacked,全部三个系列都是堆叠的)

我正在使用Excel 2007和embedded的VBAmacros编辑器。

你能通过UI手动吗? 您在代码中所做的与您在UI中执行的操作相同吗? 使用用户界面,您需要select您想要更改types的特定系列。 你是在做代码而不是设置整个图表的types吗?

对于任何与Excel图表有关的事情,我都会推荐John Peltier的网站

感谢Stackoverflow的贡献者。 我find了不同的部分(答案),把他们放在一起。 我有2个系列,并试图把他们不同types的统一图表。

Set Chrt = ws.Shapes.AddChart.Chart Set s1 = Chrt.SeriesCollection.NewSeries Set s2 = Chrt.SeriesCollection.NewSeries With Chrt .'this part chart part' End With With s1 .ChartType = xlColumnClustered .Values = ActiveSheet.Range("c3:c24") .XValues = ActiveSheet.Range("b3:b24") .HasDataLabels = True .AxisGroup = xlPrimary End With With s2 .ChartType = xlLineStacked .AxisGroup = xlSecondary .Values = ActiveSheet.Range("d3:d24") .XValues = ActiveSheet.Range("b3:b24") .HasDataLabels = True End With 

这是我的解决scheme,它的工作。 PS Im使用Excel 2007