我有一组500个单元格,我使用以下范围定义创建了一个图表:
=Sheet1!$A$1:$A$500
我有2个单元B1
和B2
,我想在其中定义图表的起始值和结束值(在1-500内),以便仅显示我的数据的子集(让我们说来自20至200)。
如何在我的数据范围定义中引用单元格B1
和B2
来替换$1
和$500
?
答案 0 :(得分:9)
通常,您应该使用带有计算的命名范围的动态图表,并在OFFSET
和COUNTA
函数中使用SERIES
的帮助来定义图表系列。< / p>
这里几乎可以解释,但这是我自己为员工培训创建的示例文件:https://www.dropbox.com/s/5enub45nn4y36gz/DynamicCharts4Types.xlsx
它包括4种不同类型的应用动态,例如显示最后X点,显示从X到Y的点等。要查看魔法,请转到功能区Formulas > Name Manager
并检查如何定义不同的范围。
答案 1 :(得分: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
<强>截图强>