Excel VBA 執行階段'1004': 應用程式定義或物件定義的錯誤

大家好,初學Excel VBA,卡在這個錯誤好久,
自知非常初階,但一一比對書上的程式碼仍無法解決,只好上來請教各位大大。

主要目的是要利用分頁"B1"內的資料製作樞紐分析表在新分頁"Test",程式碼如下:
--------------------
Sub CreatePivotTable()

Dim PT As PivotTable
Dim WS As Worksheet

With Sheets.Add
.Name = "Test"
End With
Set WS = ActiveWorkbook.Worksheets("Test")

For Each PT In WS.PivotTables
PT.TableRange2.Clear
Next

Dim PTCache As PivotCache
Set PTCache = ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:=Worksheets("B1").UsedRange)

Set PT = PTCache.CreatePivotTable(TableDestination:=WS.Range("A3"))
PT.ManualUpdate = True
PT.AddFields RowFields:=Array("貨主名稱", "運輸日期", "項目", "貨物名稱", "數量", "單位", "單價")

(……後面程式省略)

--------------------

偵錯後發現紅色那行會出現「執行階段'1004'錯誤」,
已確定分頁"B1"內含226行資料,執行程式後分頁"Test"也有順利新增,
再麻煩各位前輩指教哪裡需要修正,謝謝
2017-08-12 16:31 發佈

我遇到的1004是下面這個訊息,再看看是否相同,目前已解決
解決該1004異常,認為是 抓取Data時檢測到"空字串"
假設資料起始位置為B1,直接在B1按Ctrl+A,確認是否抓取到的範圍中,第一列是否有空白
想辦法不讓抓取到的範圍第一列有空白即可
或讓語法不去讀取到第一列之空白儲存格

程式碼參考:
Dim MySheet As Worksheet
Dim RowData As Range, PTCache As PivotCache, PT As PivotTable

Worksheets.Add
ActiveSheet.Name = "PIVOT"

Set RowData = Worksheets("sheet1").Range("A1").CurrentRegion
Set PTCache = ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:=RowData)
Set PT = PTCache.CreatePivotTable(TableDestination:=Range("A2"))
內文搜尋
X
評分
評分
複製連結
Mobile01提醒您
您目前瀏覽的是行動版網頁
是否切換到電腦版網頁呢?