2012-05-02 59 views
1

VB.NETでピボットテーブルを作成していて、それほど難しくないと思われる問題が発生しました。ピボットテーブルを作成すると、各行の小計に追加されます。その必要はありません。 Excelでは、小計オプションをドラッグし、小計を表示しないように指示します。私はそれのためにVBAに見て、それがこの形式のいくつかの行の長さである:Excelピボットテーブルのサブ合計をオフにするVB.NET

 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 

これを簡単にするにはどうすればよいですか?

いずれにしても、それは私にとっては単純なもののようでしたが、掘り出した後にはどうやって修正するのか分かりませんので、助けてください。

は、いつものようにSO

答えて

3

をいただき、ありがとうございます。ここに役立つかもしれない(http://www.pcreview.co.uk/forums/hide-subtotals-rowfields-pivot-table-t974940.htmlから)VBAの抜粋です:

'========================= 
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 
'======================== 
+0

非常に素晴らしい、それは素晴らしい作品に感謝。 – asjohnson

関連する問題