當您播放錄製的巨集,來建立新的工作表,在 Excel 2007 中的樞紐分析表時,出現錯誤訊息: 「 執行階段錯誤 '1004': 應用程式定義的錯誤"或"執行階段錯誤 5 ︰ 無效的程序呼叫或引數"

請注意--重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,且可能由 Microsoft Community 利用 Community Translation Framework技術或人工進行事後編修。翻譯過程並無專業譯者參與。Microsoft 同時提供使用者人為翻譯、機器翻譯及社群編修後的機器翻譯三種版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,所有翻譯文章都可能不盡完美,內容都可能出現詞彙、語意或文法上的錯誤。就翻譯內容之不正確或錯誤,或客戶因使用翻譯內容所產生的任何損害,微軟不負擔任何責任。Microsoft將依合理的商業努力不斷地更新機器翻譯軟體和工具,以期能為使用者提供更好的服務。

按一下這裡查看此文章的英文版本:940166
徵狀
在 Microsoft Office Excel 2007 中,您會有錄製的巨集,執行下列作業 ︰
  • 從工作表中的資料表中建立新的樞紐分析表。
  • 將新的樞紐分析表放入新的工作表中。
當您播放錄製的巨集時,可能會收到下列錯誤訊息之一 ︰
  • 錯誤訊息 1
    執行階段錯誤 '1004': 應用程式定義的錯誤。
  • 錯誤訊息 2
    執行階段錯誤 5 ︰ 無效的程序呼叫或引數。
附註下列程式碼是錄製的巨集的範例。
Sub Macro1()'' Macro1 Macro'    Sheets.Add    ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _        "Sheet1!R1C1:R12C2", Version:=xlPivotTableVersion12).CreatePivotTable _        TableDestination:="Sheet4!R3C1", TableName:="PivotTable1", DefaultVersion _        :=xlPivotTableVersion12    Sheets("Sheet4").Select    Cells(3, 1).SelectEnd Sub
發生的原因
之所以發生這個問題,是因為在錄製的巨集中指定目的地工作表和新的樞紐分析表的範圍。因此,錄製的巨集不是動態的。此外,無法重複播放錄製的巨集。
解決方案
若要解決這個問題,請依照下列步驟執行:
  1. 在 Microsoft Visual Basic 編輯器 (VBE),尋找錄製的巨集的程式碼。
  2. 清空TableDestination變數,如下列範例所示的值。
       TableDestination=""
  3. 從程式碼中移除下列的行。
       Sheets.add
     Sheets ("sheetname").Select   Cells (x,y).Select
  4. 按一下 [檔案] 功能表的 [儲存]。
附註修改程式碼,如 < 徵狀一節中的範例如下所示。
Sub Macro1()'' Macro1 Macro'    ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _        "Sheet1!R1C1:R12C2", Version:=xlPivotTableVersion12).CreatePivotTable _        TableDestination:="", TableName:="PivotTable1", DefaultVersion _        :=xlPivotTableVersion12End Sub
狀況說明
Microsoft 已確認這是<套用> 一節所列出的 Microsoft 產品的問題。

警告:本文為自動翻譯

內容

文章識別碼:940166 - 最後檢閱時間:06/12/2016 12:34:00 - 修訂: 2.0

Microsoft Office Excel 2007

  • kberrmsg kbexpertiseinter kbtshoot kbprb kbmt KB940166 KbMtzh
意見反應