[問題] VBA 樞紐分析表在迴圈中的問題
軟體: Office 365 Excel
目前寫了一個巨集,流程大約如下:
我有八個事先寫好規則的工作表,與一個來源資料工作表,
巨集會根據八個含規則工作表內容對來源資料進行八次樞紐(樞紐包在迴圈內)
每次樞紐完會把樞紐工作表內的資料全部複製到新的結果工作表,並且把樞紐工作表刪除
(因為樞紐工作表只是用來計算)
我的想法是用這個方式一次產出八個最終的結果工作表
目前的進度是功能都已經寫完,也可以順利對來源資料表進行一次處理,也就是說
不用迴圈都沒問題,但是如果我用迴圈把整個流程包起來就會在樞紐的步驟卡住。
(把迴圈拿掉的話,手動跑八次不同規則的巨集不會有錯誤,但是放迴圈的話跑到第二輪
就會在樞紐處停住)
附上產生樞紐部分的程式:
'會在下面Set PTCachc這行卡住
Set PTCache = ThisWorkbook.PivotCaches.Add _
(SourceType:=xlDatabase, _
SourceData:=Datasheet.Range(Cells(1, 1), Cells(workingRow,
workingColumn)))
Set PT = PTCache.CreatePivotTable _
(TableDestination:="", _
TableName:=ReportType)
--
錯誤訊息是:
執行階段錯誤'1004':
'Range'方法(_Worksheet'物件)失敗
錯誤訊息看起來不太像是樞紐的問題,但是程式都是停在上面貼的樞紐部分。
雖然我在每一次樞紐完都會把樞紐工作表刪除,不知道是否會是實際上樞紐資料其實
還存在背景裡,導致第二輪要使用樞紐時發生錯誤?
我因為這個猜想所以嘗試過使用PT.ClearTable將樞紐清空,但程式還是一樣停住。
因為巨集有點龐大,所以難以把整個貼上來,或許問題也不好找,真是不好意思,
各位先進如果覺得可能要往哪個方向查都請不吝賜教,謝謝!
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.115.35.227
※ 文章網址: https://www.ptt.cc/bbs/Office/M.1551206739.A.229.html
※ 編輯: homelife (59.115.35.227), 02/27/2019 02:50:55
※ 編輯: homelife (59.115.35.227), 02/27/2019 04:12:12
→
02/27 06:54,
6年前
, 1F
02/27 06:54, 1F
→
02/27 06:55,
6年前
, 2F
02/27 06:55, 2F
→
02/27 07:20,
6年前
, 3F
02/27 07:20, 3F
→
02/27 07:21,
6年前
, 4F
02/27 07:21, 4F
您好,使用您一、二行推文的程式碼成功了!
請問原本的寫法是哪裡有問題呢,為什麼會造成第二次執行就停住?
謝謝~
※ 編輯: homelife (59.115.35.227), 02/27/2019 17:59:39
→
02/27 18:34,
6年前
, 5F
02/27 18:34, 5F
→
02/27 18:34,
6年前
, 6F
02/27 18:34, 6F
謝謝,上了一課~我也許需要再做一些練習才能完全理解
※ 編輯: homelife (59.115.46.162), 02/28/2019 14:28:30
Office 近期熱門文章
PTT數位生活區 即時熱門文章