2013-10-21 48 views
0

我創建一個pirvot表,但colunm順序不是我想要的。我想將一列移到右端。我可以在Excel中執行此操作,但不知道如何使用VBA執行此操作。如何使用VBA將一列移動到數據透視表的最後?

在Excel中,可以這樣做 - 激活要移動的列標題,單擊右鍵,選擇移動,移動「 - 」結束。

錄製宏 - 當錄製宏,它只是顯示的確切位置,只是喜歡, ActiveSheet.PivotTables( 「PivotTable16」)透視字段( 「周」)PivotItems( 「#VALUE!」)_ 。位置= 12 但是我想在其他文件中使用宏,也許最終位置不是12.然後宏不能被使用。

希望能在這裏得到幫助。如何做到這一點,以移動colunm由VBA結束?謝謝。

回答

1

我希望我能幫到你。

您可以通過

ActiveSheet.PivotTables("PivotTable1").PivotFields("whatever").PivotItems.count

得到末端位置基本上它返回的項目數爲編輯

所以標籤

,你可以不喜歡

Dim total as Integer 

total = ActiveSheet.PivotTables("PivotTable1").PivotFields("whatever").PivotItems.count 

ActiveSheet.PivotTables("PivotTable1").PivotFields("whatever").PivotItems("whatever").position = total 
+0

它的工作原理。非常感謝。 – JennyZheng

0

只是一個隨機的筆記給任何人遇到這個問題,並遇到同樣的問題,我做了。如果在你的宏中隱藏字段,它會給你一個錯誤。在設置數據透視表時,不要將此代碼用作最後一件事。使用此代碼,讓它移動到底部位置,然後讓您的代碼隱藏您的字段。如果您先隱藏字段,則會計算隱藏字段,然後嘗試將其移到數據透視表之外並導致錯誤。

相關問題