VBA:基于两个单元格值设置范围(图表)

时间:2017-07-10 12:15:34

标签: excel vba graph

基于" Define range based on the value of another cell"我正在尝试创建一个更新图形范围的灵活宏。此图需要更新两个坐标,但需要使用固定列(字母)。

唯一的问题是,我只能定义结束。不是开始,我应该如何创建这个灵活的(用户输入)行输入字段?第一个是我提出的,但是不起作用,其他的工作,但他们只定义结束而不是开始。

Sub Example()
'
'

    Dim Cval As Variant
    Dim Dval As Variant
    Cval = Sheets("Settings").Range("C30").Value
    Dval = Sheets("Settings").Range("C31").Value

    Sheets("Chart-16Q1-18Q4").Select
    ActiveChart.ChartArea.Select
    ActiveChart.PlotArea.Select

    ActiveChart.SeriesCollection(1).Values = "=Calculation_sheet!$C$" & Cval ":$C$" & Dval
    ActiveChart.SeriesCollection(2).Values = "=Calculation_sheet!$D$5:$D$" & Dval
    ActiveChart.SeriesCollection(3).Values = "=Calculation_sheet!$F$5:$F$" & Dval
    ActiveChart.SeriesCollection(4).Values = "=Calculation_sheet!$G$5:$G$" & Dval
    ActiveChart.SeriesCollection(5).Values = "=Calculation_sheet!$H$5:$H$" & Dval
    ActiveChart.SeriesCollection(6).Values = "=Calculation_sheet!$M$5:$M$" & Dval

End Sub

1 个答案:

答案 0 :(得分:0)

您建议的方法应该有效。你只忘了一些&并得到了一个编译错误:

ActiveChart.SeriesCollection(1).Values = "=Calculation_sheet!$C$" & Cval & ":$C$" & Dval
'                                                                       ^^^