在Excel表格中包含了一个绑定另一个表格的数据的图表。图表系列都是线条系列。我需要一半线条系列作为实线,另一半作为虚线。这可以通过手动拾取点改变线条样式,这不是我需要的方式,我需要的方式是来自vba代码,我们可以像固体和半虚线一样做一半。Can Line系列可以绘制为半实心半虚线?
上面的影像,我需要从VBA code.I做到这一点有搜索我的网站和应用提供的解决方案,但这些都是提供applying.Any解决方案是非常赞赏。
在Excel表格中包含了一个绑定另一个表格的数据的图表。图表系列都是线条系列。我需要一半线条系列作为实线,另一半作为虚线。这可以通过手动拾取点改变线条样式,这不是我需要的方式,我需要的方式是来自vba代码,我们可以像固体和半虚线一样做一半。Can Line系列可以绘制为半实心半虚线?
上面的影像,我需要从VBA code.I做到这一点有搜索我的网站和应用提供的解决方案,但这些都是提供applying.Any解决方案是非常赞赏。
简短的回答是没有。
更长时间更有用的答案是,您必须将系列分成两部分,因为这不能用于单个系列。该生产线是属于SeriesCollection
对象下它的格式属性,由非常哈克代码,其用于展示底层对象模型所证明的单个对象:
Sub editChart()
Dim cO As Chart
Set cO = ActiveChart
Dim s As Series
Set s = cO.SeriesCollection(1)
s.Format.Line.DashStyle = msoLineDash
Set s = cO.SeriesCollection(2)
s.Format.Line.DashStyle = msoLineSolid
End Sub
您可以与自定义格式混淆为Points
,其中可能有很多附加到SeriesCollection
,因为这些可以单独格式化。
需要注意的是,如果你想行加入了他们必须共享一个数据点(而非第一Series
停在点n
和第二Series
开始在点n+1
)。
你应该能够做到这一点是这样的:
ActiveChart.SeriesCollection(1).ChartType = xlLineStacked
ActiveChart.SeriesCollection(1).Points(14).Format.Line.DashStyle = 3
所以在我的情况下,第一个数据系列是一个普通的线,但(在该图14),最后点了它的格式更改为破折号。
可能是通过VBA实现的,但还有另一个没有VBA的自动化解决方案:将每个系列分成两个系列 - 一个固定直到12月,一个固定直到12月份开始点缀。只需使用公式来设置其他字段(在十二月之前或之后)到'“”'...... – 2013-02-27 07:35:46
这是一个很好的问题,我的问题是关于虚线或虚线以备将来数据 – 2016-12-11 12:25:21