【问题标题】:Turning off Excel Pivot Table Sub Totals VB.NET关闭 Excel 数据透视表小计 VB.NET
【发布时间】:2012-05-02 22:04:11
【问题描述】:

我正在 VB.NET 中创建数据透视表,但遇到了一个我认为不会像现在这样困难的问题。当我创建一个数据透视表时,它会为每一行添加小计,我不希望这样。在 excel 中,您只需向下拖动小计选项并告诉它不显示小计。我查看了它的 VBA,这种格式有几行长:

     ActiveSheet.PivotTables("Main Highway Pivot").PivotFields("Division"). _
    Subtotals = Array(False, False, False, False, False, False, False, False, False, False, _
    False, False)

这是一个惊人数量的代码,但这很好,所以我一直在尝试与我在 VB.NET 中的数据透视表类似的东西

With ptTable
.ManualUpdate = True
.PivotFields("Division").orientation = Excel.XlPivotFieldOrientation.xlRowField
.PivotFields("Net Sales Amt").orientation = Excel.XlPivotFieldOrientation.xlDataField
.PivotFields("Division").Subtotals = false
.ColumnGrand = False
.RowGrand = True
.ManualUpdate = False
End With

我尝试了几种不同的变体

 .PivotFields("Division").Subtotals = false

行,但运气不佳。这是正确的代码,我指定的错误部分是错误的吗?为什么没有

.subtotal = false

让这更容易?

无论如何,这对我来说似乎很简单,但经过一番挖掘后,我不知道如何解决它,所以我们将不胜感激。

一如既往地谢谢你

【问题讨论】:

    标签: .net vb.net excel


    【解决方案1】:

    这里有一个 VBA 的 sn-p(来自 http://www.pcreview.co.uk/forums/hide-subtotals-rowfields-pivot-table-t974940.html)可能会有所帮助:

    '=========================
    Sub NoSubtotals()
    'turns off subtotals in pivot table
    '.PivotFields could be changed to
    '.RowFields or .ColumnFields
    Dim pt As PivotTable
    Dim pf As PivotField
    On Error Resume Next
    For Each pt In ActiveSheet.PivotTables
    For Each pf In pt.PivotFields
    'First, set index 1 (Automatic) to True,
    'so all other values are set to False
    pf.Subtotals(1) = True
    pf.Subtotals(1) = False
    Next pf
    Next pt
    End Sub
    '========================
    

    【讨论】:

      猜你喜欢
      • 2013-07-13
      • 2015-01-21
      • 2020-06-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多