3

我有一组 500 个单元格,我使用以下范围定义从中创建了一个图表:

=Sheet1!$A$1:$A$500

我有 2 个单元格B1B2我想在其中定义图表的开始值和结束值(在 1-500 内)以仅显示我的数据的一个子集(比如说从 20 到 200)。

如何引用单元格B1并在我的数据范围定义B2中替换$1和?$500

4

2 回答 2

9

通常,您应该在定义图表系列的函数的帮助下使用具有计算命名范围的动态图表。OFFSETCOUNTASERIES

这里解释得差不多了,但这是我自己为员工培训创建的示例文件:https ://www.dropbox.com/s/5enub45nn4y36gz/DynamicCharts4Types.xlsx

它包括 4 种不同类型的应用动态,例如显示最后 X 点、显示从 X 到 Y 的点等。要查看魔术,请转到 RibbonFormulas > Name Manager并检查如何定义不同的范围。

于 2013-02-15T17:32:37.043 回答
3

如果我正确理解了您的查询,那么您可以使用.SetSourceData并添加来自B1和的值B2

这是一个例子

Option Explicit

'~~> Please amend the code as applicable
Sub Sample()
    Dim objChrt As ChartObject
    Dim chrt As Chart
    Dim StartVal As Long, endVal As Long

    With Sheets("Sheet1")
        StartVal = .Range("B1").Value
        endVal = .Range("B2").Value

        Set objChrt = .ChartObjects("Chart 1")
        Set chrt = objChrt.Chart

        chrt.SetSourceData (.Range("A" & StartVal & ":A" & endVal))

    End With
End Sub

截屏

在此处输入图像描述

于 2013-02-15T17:36:07.463 回答