Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


3706 / 13646 ツリー ←次へ | 前へ→

【60571】PivotCacheオブジェクトでエラー ひろゆき 09/3/2(月) 17:31 質問[未読]
【60586】Re:PivotCacheオブジェクトでエラー n 09/3/3(火) 22:45 発言[未読]
【60591】Re:PivotCacheオブジェクトでエラー ひろゆき 09/3/4(水) 9:41 お礼[未読]

【60571】PivotCacheオブジェクトでエラー
質問  ひろゆき  - 09/3/2(月) 17:31 -

引用なし
パスワード
   ピボットテーブルを自動で作成するマクロを個別に30個作成してあります。
その30個のマクロを1つのマクロにして実行すると、2つ目のピボットテーブルを作成するマクロの途中(PivotCache)でエラーとなってしまいます。

エラー箇所は、以下の☆マークです。

皆さんのお知恵を貸してください。

尚、個別にマクロを実行するとエラーなく正常に終了します。

エラーメッセージ

実行時エラー'-2147417848(80010108)':
'CreatePivotTable' メソッドは失敗しました: 'PivotCache' オブジェクト


以下マクロの抜粋

Sub EUC()
  Kill ("C:\EUC\*.xls") '前回ファイルの削除
  Call Macro2A
  Call Macro2B
  Call Macro3A
    ・
    ・
    ・
End Sub

Sub Macro2A()
  With ActiveWorkbook.PivotCaches.Add(SourceType:=xlExternal)
    .Connection = Array(Array( _
    "ODBC;DBQ=C:\EUC\Uriage2008b.mdb;DefaultDir=C:\EUC;Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;MaxBufferSize=2048;M" _
    ), Array( _
    "axScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;UserCommitSync=Yes;"))
    .CommandType = xlCmdSql
    .CommandText = Array( _
    "SELECT q_200902.ブロック, q_200902.金額, q_200902.計上日付, q_200902.受注事業所, q_200902.数量, q_200902.販売事業所, q_200902.販売店, q_200902.商品, q_200902.商品名" _
     & "FROM `C:\EUC\Uriage2008b`.q_200902 q_200902" & Chr(13) & "" & Chr(10) & "WHERE (q_200902.ブロック='2A')" _
    )
    .CreatePivotTable TableDestination:=Range("A3"), TableName:= _
    "ピボットテーブル1", DefaultVersion:=xlPivotTableVersion10
  End With
    ・
    ・
    ・
  ChDir "C:\EUC"
  ActiveWorkbook.SaveAs Filename:="C:\EUC\200902_2A.xls", FileFormat:= _
    xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
    , CreateBackup:=False
  ActiveWindow.Close
  Workbooks.Add
End Sub
Sub Macro2B()
  With ActiveWorkbook.PivotCaches.Add(SourceType:=xlExternal)
    .Connection = Array(Array( _
    "ODBC;DBQ=C:\EUC\Uriage2008b.mdb;DefaultDir=C:\EUC;Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;MaxBufferSize=2048;M" _
    ), Array( _
    "axScanRows=8;PageTimeout=5;SafeTransactions=0;Threads=3;UserCommitSync=Yes;"))
    .CommandType = xlCmdSql
    .CommandText = Array( _
    "SELECT q_200902.ブロック, q_200902.金額, q_200902.計上日付, q_200902.受注事業所, q_200902.数量, q_200902.販売事業所, q_200902.販売店, q_200902.商品, q_200902.商品名" _
     & "FROM `C:\EUC\Uriage2008b`.q_200902 q_200902" & Chr(13) & "" & Chr(10) & "WHERE (q_200902.ブロック='2B')" _
    )
☆ .CreatePivotTable TableDestination:=Range("A3"), TableName:= _
☆ "ピボットテーブル1", DefaultVersion:=xlPivotTableVersion10
  End With
    ・
    ・
    ・
  ChDir "C:\EUC"
  ActiveWorkbook.SaveAs Filename:="C:\EUC\200902_2B.xls", FileFormat:= _
    xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
    , CreateBackup:=False
  ActiveWindow.Close
  Workbooks.Add
End Sub
Sub Macro3A()
以下マクロが同様に続きます。

【60586】Re:PivotCacheオブジェクトでエラー
発言  n  - 09/3/3(火) 22:45 -

引用なし
パスワード
   バージョンは
> (Windows XP Professional : Excel 2002)
のようですね。
//moug.net/faq/viewtopic.php?t=38750

#マルチポストなので独り言的コメントですが。
Excelをセーフモードで起動して、新規Bookに該当コードをコピーして実行しても同じ現象なんですかね。

【60591】Re:PivotCacheオブジェクトでエラー
お礼  ひろゆき  - 09/3/4(水) 9:41 -

引用なし
パスワード
   n さん

貴重なアドバイスありがとうございます。
早速、ためしめみます。

3706 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free