【问题标题】:Get name of chart for current pivot table获取当前数据透视表的图表名称
【发布时间】:2018-08-29 16:05:27
【问题描述】:

我有一个 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 是当前工作表,我已经在其他地方成功使用过。

有没有办法访问每个图表来更改每个名称?如果是,请分享如何?

【问题讨论】:

  • 重新阅读我对您的last question 的回答。 PivotTables 是一个返回两种类型之一的函数。选择合适的类型。
  • @TnTinMin。我重新阅读了您的答案,并在您提供的链接中发现了 CType 和 TryCast 之间的用法和区别。使用 TryCast 后,它可以正常工作,因为它没有返回错误。再次感谢。

标签: excel vba vb.net


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 2014-11-17
    • 1970-01-01
    • 2011-02-28
    • 1970-01-01
    • 2019-07-22
    • 1970-01-01
    • 2017-10-16
    • 2022-06-11
    • 1970-01-01
    相关资源
    最近更新 更多