2017-08-01 72 views
0

所有,計數列數透視表中VBA

我有瓦里斯在列寬的樞軸因此我試圖計數在樞軸柱的量,我有以下代碼就行突出顯示的錯誤

Dim pt As PivotTable 
Set pt = ActiveSheet.PivotTables(1) 
pt.ColumnRange.Count **ERROR** 

請有人建議如何最好地計算數據透視表中的列數。

+1

https://peltiertech.com/referencing-pivot-table-ranges-in-vba/很好地概括瞭如何引用數據透視表中的範圍:選擇您想要的區域和然後使用'.Columns.Count'來給你列數。 –

+0

你把類似'Debug.Print pt.ColumnRange.Count'的東西還是隻是'pt.ColumnRange.Count'?在它自己的它將返回'屬性的無效使用'它返回一個數字,所以你需要做一些事情 - 分配給一個變量,顯示在一個消息框等。雖然說,我不知道什麼它計數 - 我的測試有3列,它返回值8,這等於我的數據,包括標題的行總數,但很肯定不是這樣。 –

回答

1

嘗試獲得的列數與pt.TableRange2.Columns.Count

代碼

Dim pt As PivotTable 
Dim NumofCols As Long 

Set pt = ActiveSheet.PivotTables(1) 
NumofCols = pt.TableRange2.Columns.Count 

如果你想要做的就是讓自己的列寬度合適,使用以下行:

pt.TableRange2.EntireColumn.AutoFit 
+1

只是打敗了我。計數包括可能是一個痛苦的總列。 –

+0

謝謝工作完美! –