首页 > 解决方案 > 我究竟做错了什么?我需要 VBA 帮助来更改 Excel 堆积柱形图的数据系列

问题描述

我需要更改图表数据的最后一行/最后一行,该数据由另一块 VBA 代码刷新。这是用于工作表上的堆积条形图;图表的数据位于同一工作簿中的不同工作表上。

图表的数据通过对 SQL Server 数据库的 ADODB 调用进行刷新。具体来说,每次刷新数据时,我都会使用 VBA 代码清除之前的行,然后插入新数据。新数据集的行数通常与之前的数据集不同:新数据集的行数可能比旧数据集多或少。

我的问题是,当我尝试更改图表的源数据时,图表没有任何反应,并且我没有收到任何错误。

下面是相关的 VBA 片段(其中 iLastRow 在 VBA 中较早设置,基于新数据集中的行数)。

    Dim myChart As Chart
    Set myChart = Worksheets("Charts").ChartObjects("Chart 22")
    myChart.Activate
    ActiveChart.SetSourceData Source:=Range("'Charts Data'!$A$1:$A$" & CStr(iLastRow) & ",'Charts 
    Data'!$C$1:$G$" & CStr(iLastRow))

不想在每次刷新数据集时重新创建图表,因为唯一需要为图表更新的是图表数据的底部/最后一行的行号(我的 VBA 片段中的 iLastRow )。

我做错了什么,和/或是否有调整图表数据的首选方法?

标签: excelvba

解决方案


推荐阅读