获取当前数据透视表的图表名称

时间:2018-08-29 16:05:28

标签: vb.net excel-vba

我有一个带有四个数据透视表的Excel电子表格,每个电子表格都有一个相关的图表。使用VB.Net,我更新了数据源,该数据源更新了数据透视表,该数据透视表会自动更新其相关图表。所有这些都很好。但是现在我必须更新每个图表中的标题。

我想我需要做的是通过了解图表的相关数据透视表的名称来访问图表。

我尝试遍历 worksheet.pivotTables 以获取每个数据透视表的名称,但在For Each行中出现错误:

For Each xlPivotTable As Excel.PivotTable In xlWorkSheetShippedSQ.PivotTables
            strCurrentPivotTable = xlPivotTable.Name

Next

xlWorkSheetShippedSQ.PivotTables 上显示

  

从对象到无数的隐式转换

,并希望我使用CType(xlWorkSheetShippedSQ.PivotTables, IEnumerable(Of Excel.PivotTable)),但是当我这样做时,我收到了InvalidCastException。 xlWorkSheetShippedSQ是当前的工作表,我已经在其他地方成功使用了它。

是否可以访问每个图表以更改每个名称?如果可以,请分享如何?

1 个答案:

答案 0 :(得分:0)

@TnTinMn在他们为我回答的另一个问题中几乎提供了答案。正如我在上一条评论中提到的,使用TryCast可以正常工作,因为它没有返回错误。