我有一個數據集需要在Excel中旋轉,然後行標籤按月分組(行標籤是日期)。我有VBA安裝來完成數據透視,然後將行標籤分組到幾個月,但在分組到幾個月後,我試圖讓下拉列表中的(空白)字段取消選擇。我試圖用錄製一個宏來做這件事,那是行不通的。它只是做了像「< 11/15/15」。我發現應該適用於我的問題的代碼,但我一直收到無法找到數據透視表項的錯誤消息。Excel VBA從數據透視組中刪除空白
這是應該工作的代碼。
Dim p_i As PivotItem
With ActiveSheet.PivotTables("PivotTable1").PivotFields("Delivery Time of Actual Item")
.PivotItems("(blank)").Visible = True
For Each p_i In .PivotItems
If p_i.Name = "(blank)" Then
p_i.Visible = False
End If
Next
End With
問題是否出現這樣的事實,即我先按月對這些項目進行分組?
如果你刪除這行'.PivotItems(「(blank)」)。Visible = True' does it work? –
這沒有奏效。我終於決定在數據透視前對數據進行預格式化,並刪除空白數據的行。這種方式空白不會被創建,因爲我只是將它們濾掉。我仍然想看看是否有人知道爲什麼這不起作用。 – Zionmoose
我剛剛測試過這段代碼,不能重現問題。然後我從數據中刪除了所有空白行並再次進行了測試,結果在'.PivotItems(「(blank)」)。Visible = True'行失敗,但在For循環中沒有失敗。我希望這個測試可以幫助你。 –