所以我有一个有6个系列的图表,我希望能够使用一组ActiveX复选框使每个系列可见或不可见。到目前为止,复选框似乎工作正常,但我无法弄清楚如何使单个系列看不见。我可以使用该系列的属性使其不可见吗?谷歌和微软的帮助并没有为我提供帮助。
(当然,这并不意味着它不存在......)
感谢任何和所有帮助。
答案 0 :(得分:6)
<强>更新强>
等等,我记得我以前曾经遇到过这个问题。隐藏所需数据的一种好方法是隐藏正在绘制的数据的实际行/列。因此,您的ActiveX控件不会触及图表,而是隐藏/取消隐藏图表数据的列/行。
您只需要设置图表数据,使其不会干扰需要显示的任何其他数据。
为了任何人的利益而留下原来的答案......
我刚录制了一个宏并用它来玩......
得到了这个好结果:
ActiveSheet.ChartObjects("Chart 1").Activate
ActiveChart.SeriesCollection(1).Select
'Turn it on
Selection.Format.Line.Visible = msoTrue
'Turn it off
Selection.Format.Line.Visible = msoFalse
这与在“格式数据系列”对话框的“线条颜色”部分中选择No Line
相同。
答案 1 :(得分:2)
当我在Excel中难倒时,我总是尝试录制一个宏,一个WWBGD? (比尔盖茨会做什么?)
这是条形图的结果,我将填充设置为“无”:
ActiveSheet.ChartObjects("Chart 1").Activate
ActiveChart.SeriesCollection(1).Select
Selection.Format.Fill.Visible = msoFalse
这有帮助吗?
答案 2 :(得分:1)
在ChartType = xlLineMarkers
的情况下,上面的2对我来说不起作用。
工作是什么:
For Each mySeries In .SeriesCollection
With mySeries
.Border.LineStyle = xlNone
.MarkerStyle = xlNone
.MarkerBackgroundColorIndex = xlColorIndexNone
End With
Next
但是,图例仍会显示该行。有必要单独删除该条目。
答案 3 :(得分:1)
在Excel 2013中,要使系列不可见,也将其从图例中删除,请使用过滤器选项。 Vba示例:
以下代码通过过滤图表中的Out / In来隐藏/恢复系列。 ActiveSheet.ChartObjects(&#34; Chart 1&#34;)。Chart.FullSeriesCollection(1).IsFiltered = True / False
这相当于使用功能区命令“设计+选择数据”(在选择字符时可用)手动过滤/输出系列。
所有系列选项,如破折号颜色,标记等等都将保持不变。
答案 4 :(得分:0)
ActiveSheet.ChartObjects("Chart 1").Activate
ActiveChart.SeriesCollection(linenumber).Select
Selection.Format.Fill.Visible = msoFalse
这很好用,选择图表比我有24行,带有复选框的列表视图和24个条目。单击1,它消失,再次单击并返回。您也可以看到该行显示在图例中。