我正在设计一个宏,该宏使用电子表格中的各种范围创建图表。我的图表代码如下所示,但由于某些原因,我无法显示左(主(轴标题。这对右边(次要(来说很好。其余的代码运行良好,都挂在这个不会显示的单轴标题上。
有什么想法吗?
ActiveSheet.Shapes.AddChart2(201, xlColumnClustered).Select
With ActiveChart
.SetSourceData Union(range1, range2)
.FullSeriesCollection(1).ChartType = xlColumnClustered
.FullSeriesCollection(1).AxisGroup = 1
.FullSeriesCollection(1).HasErrorBars = True
.FullSeriesCollection(2).ChartType = xlLine
.FullSeriesCollection(2).AxisGroup = 1
.FullSeriesCollection(2).AxisGroup = 2
.SetElement (msoElementPrimaryValueAxisTitleAdjacentToAxis)
.SetElement (msoElementSecondaryValueAxisTitleAdjacentToAxis)
.SetElement (msoElementPrimaryCategoryAxisTitleNone)
.ChartArea.Font.Color = RGB(0, 0, 0)
.ChartArea.Font.Size = 10
End With
不确定,但可能是这一行导致了问题吗?
With ActiveChart
.SetSourceData Union(range1, range2)
.FullSeriesCollection(1).ChartType = xlColumnClustered
.FullSeriesCollection(1).AxisGroup = 1
.FullSeriesCollection(1).HasErrorBars = True
.FullSeriesCollection(2).ChartType = xlLine
.FullSeriesCollection(2).AxisGroup = 1 ' <------- This line seems unnecessary
.FullSeriesCollection(2).AxisGroup = 2
.SetElement (msoElementPrimaryValueAxisTitleAdjacentToAxis)
.SetElement (msoElementSecondaryValueAxisTitleAdjacentToAxis)
.SetElement (msoElementPrimaryCategoryAxisTitleNone)
.ChartArea.Font.Color = RGB(0, 0, 0)
.ChartArea.Font.Size = 10
End With
编辑我可能从这个答案中找到了解决方案。这听起来像是一个bug,常量被解释为306
,但如果你查看文档,常量被映射到值307
。因此,只需使用307
文字而不是msoElementPrimaryValueAxisTitleAdjacentToAxis
。