0
我一直在Excel 2016(64位版本)中記錄/寫入宏。我需要在它的最後創建一個數據透視表。我在我的電腦上嘗試了四種不同的方式,它們都可以工作。運行時錯誤5有時在VBA創建數據透視表
不過!當我將文件發送給其他用戶時,數據透視表部分總是失敗,並始終返回
運行時錯誤5:無效的過程調用或參數。
其他用戶位於虛擬桌面(Windows 2008 R2)和Office 2013(32位版本)上。
我的確研究過這個問題,這就是爲什麼我在下面有很多不同的代碼位,但不管我做什麼,其他用戶都得到了運行時錯誤5。再說一次,所有這些工作都是在我的電腦上按照預期工作的,所以我假設有一個版本問題,但我承認我在這一點上正在猜測。我錯過了什麼?
宏錄製代碼:
Range("A1").Select
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Table1", Version:=6).CreatePivotTable TableDestination:="Summary!R1C1", _
TableName:="PivotTable3", DefaultVersion:=6
最常見的修復我在網上找到:
Range("A1").Select
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Table1", Version:=6).CreatePivotTable TableDestination:="'Summary'!R1C1", _
TableName:="PivotTable3", DefaultVersion:=6
第二個最常見的修復我在網上找到:
Range("A1").Select
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Table1", Version:=6).CreatePivotTable TableDestination:=ActiveWorkbook.Worksheets("Summary").Range("$A$1"), _
TableName:="PivotTable3", DefaultVersion:=6
我甚至試圖通過作弊將現有數據透視表導入新工作簿,然後更新數據透視表獲取數據的位置,但我仍然保留我得到一個運行時錯誤5。
ActiveSheet.PivotTables("PivotTable3").ChangePivotCache ActiveWorkbook. _
PivotCaches.Create(SourceType:=xlDatabase, SourceData:="Table1", Version:=6)
6版是2016年的Excel也許你應該使用5版爲Excel 2013? –
查看[PivotCaches.Create方法](https://msdn.microsoft.com/VBA/Excel-VBA/articles/pivotcaches-create-method-excel)及其對'Version'的枚舉[[XlPivotTableVersionList Enumeration] (https://msdn.microsoft.com/VBA/Excel-VBA/articles/xlpivottableversionlist-enumeration-excel) –