3

所以我有一个图表,上面有 6 个系列,我希望能够使用一组 ActiveX 复选框使每个系列可见或不可见。到目前为止,复选框似乎工作正常,但我不知道如何使单个系列不可见。我可以使用该系列的属性使其不可见吗?谷歌和微软的帮助并没有为我打开它。

(当然,这并不意味着它不存在......)

任何和所有的帮助表示赞赏。

4

5 回答 5

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在“格式化数据系列”对话框的“线条颜色”部分中进行选择。

于 2012-12-14T20:42:49.353 回答
2

当我在 Excel 中遇到困难时,我总是尝试录制一个宏,比如 WWBGD?(比尔盖茨会怎么做?)

这是条形图的结果,我将填充设置为“无”:

ActiveSheet.ChartObjects("Chart 1").Activate
ActiveChart.SeriesCollection(1).Select
Selection.Format.Fill.Visible = msoFalse

这有帮助吗?

于 2012-12-14T20:37:02.093 回答
1

以上 2对我不起作用,以防ChartType = xlLineMarkers. 起作用的是:

For Each mySeries In .SeriesCollection
    With mySeries
        .Border.LineStyle = xlNone
        .MarkerStyle = xlNone            
        .MarkerBackgroundColorIndex = xlColorIndexNone
    End With
Next

但是,图例仍然显示该行。有必要单独删除该条目。

于 2013-05-15T20:54:07.257 回答
1

在 Excel 2013 中,要使系列不可见,也将其从图例中移除等,请使用过滤器选项 . Vba 示例:

以下代码通过在图表中过滤出/入来隐藏/恢复系列。ActiveSheet.ChartObjects("图表 1").Chart.FullSeriesCollection(1).IsFiltered = True / False

这相当于使用功能区命令设计 +选择数据手动过滤串联/输出(选择CHAR时可用)。

所有系列选项,如破折号颜色、标记等。都恢复不变。

于 2015-04-23T18:14:21.050 回答
0
ActiveSheet.ChartObjects("Chart 1").Activate
ActiveChart.SeriesCollection(linenumber).Select
Selection.Format.Fill.Visible = msoFalse

这很好用,选择图表而不是我有 24 行,带有复选框和 24 个条目的列表视图。点击1,它消失,再次点击它的背面。您还可以看到线 dis- 并出现在图例中。

于 2014-10-28T15:04:20.467 回答