Access VBA質問箱 IV

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

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


8207 / 9994 ←次へ | 前へ→

【4966】ACCESSからEXCELのピボットテーブル作成
質問  VBA超初心者  - 05/4/27(水) 16:06 -

引用なし
パスワード
   いつもこちらを拝見し、勉強しております。

何がどうおかしいのか分からないので、ご教授頂けたら幸いです。宜しくお願い
致します。

下記VBにて、ACCESSからEXCELに出力し、同時にピボットテーブル作成迄行っ
ております。

--------------------------------------------------------------------------
Set objexcel = CreateObject("Excel.Application")
objexcel.Visible = True

DoCmd.OutputTo acOutputTable, "XXXXX", acFormatXLS, "\XXXXX.XLS", True

Dim strDataRng As String

strDataRng = ActiveWorkbook.Worksheets("XXXXX").Range("A1").CurrentRegion.Address(, , xlR1C1)
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
"'XXXXX'!" & strDataRng).CreatePivotTable TableDestination:="", _
TableName:="ピボットテーブル1", DefaultVersion:=xlPivotTableVersion10
ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1)
ActiveSheet.Cells(3, 1).Select

ActiveSheet.PivotTables("ピボットテーブル1").PrintTitles = True
ActiveSheet.PivotTables("ピボットテーブル1").AddFields RowFields:=Array("XXXXX", _
"XX", "XXXXX", "XXX", "XXX"), ColumnFields:="XXXXX", PageFields:=Array("XXXXX" _
, "XXX", "XXX", "XXX")
With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("XX")
.Orientation = xlDataField
.Position = 1
End With
With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("XX")
.Orientation = xlDataField
.Position = 2
End With
ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("粗利").Orientation = _
xlDataField
ActiveWorkbook.ShowPivotTableFieldList = False
'Application.CommandBars("PivotTable").Visible = False
ActiveSheet.PivotTables("ピボットテーブル1").PivotSelect "'合計 / XX'", _
xlDataAndLabel, True
Selection.NumberFormatLocal = "#,##0_ "
ActiveSheet.PivotTables("ピボットテーブル1").PivotSelect "'合計 / XX':'合計 / XX'", _
xlDataAndLabel, True
Selection.NumberFormatLocal = "\#,##0;\-#,##0"
Range("A5").Select
With ActiveSheet.PivotTables("ピボットテーブル1").PivotFields("XXXXX")
.PivotItems("XXXXX").Visible = False
End With
Sheets("Sheet1").Select
Sheets("Sheet1").Name = "XXXXX"
Sheets("XXXXX").Select

strDataRng = ActiveWorkbook.Worksheets("XXXXX").Range("A1").CurrentRegion.Address(, , xlR1C1)
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
"'XXXXX'!" & strDataRng).CreatePivotTable TableDestination:="", _
TableName:="ピボットテーブル2", DefaultVersion:=xlPivotTableVersion10
ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1)
ActiveSheet.Cells(3, 1).Select

ActiveSheet.PivotTables("ピボットテーブル2").PrintTitles = True
ActiveSheet.PivotTables("ピボットテーブル2").AddFields RowFields:=Array("XXXXX", _
"XX", "XXX", "XXX", "XXX"), ColumnFields:="XXX", PageFields:=Array("XXX" _
, "XXX", "XXX", "XXX")
With ActiveSheet.PivotTables("ピボットテーブル2").PivotFields("XX")
.Orientation = xlDataField
.Position = 1
End With
ActiveSheet.PivotTables("ピボットテーブル2").PivotFields("XXX").Orientation = _
xlDataField
ActiveWorkbook.ShowPivotTableFieldList = True
ActiveWorkbook.ShowPivotTableFieldList = False
Application.CommandBars("PivotTable").Visible = False
ActiveSheet.PivotTables("ピボットテーブル2").PivotSelect "'合計 / XX'", _
xlDataAndLabel, True
Selection.NumberFormatLocal = "#,##0_ "
ActiveSheet.PivotTables("ピボットテーブル2").PivotSelect "'合計 / XX'", _
xlDataAndLabel, True
Selection.NumberFormatLocal = "\#,##0;\-#,##0"
Range("A5").Select
With ActiveSheet.PivotTables("ピボットテーブル2").PivotFields("XX")
.PivotItems("XX").Visible = False
.PivotItems("XX").Visible = False
End With
Sheets("Sheet2").Select
Sheets("Sheet2").Name = "XXX"

Exit_コマンド2_Click:
Exit Sub

Err_コマンド2_Click:
MsgBox Err.Description
Resume Exit_コマンド2_Click

End Sub
--------------------------------------------------------------------------

開発環境は、OS=XP,EXCEL=2002,ACCESS=2000
実際に動かす環境は、OS=98,EXCEL=2000,ACCESS=2000になります。

開発環境にて動作チェックを行ったところ、連続操作(抽出日等の条件を変え、
連続操作)を行った際に「オブジェクト変数またはwithブロック変数が設定され
ていません」のエラーが出力されてしまいます。(1回目の操作終了後、ACCESSを
一旦閉じて、再実行すると、問題ありませんでした)

実際に動かす環境にて動作チェックをしたところ、「オブジェクトは、このプロ
パティまたはメソッドをサポートしていません」とエラーが出力されてしまいま
す(この時は、1回目の操作でNGになります)


出来る限り頑張って、ここまでたどり着けたのですが、どうしても分かりません。初歩的な問題かも知れませんが、大変申し訳ありません。ご教授頂けると幸いです。

宜しくお願い致します。

1,085 hits

【4966】ACCESSからEXCELのピボットテーブル作成 VBA超初心者 05/4/27(水) 16:06 質問
【4967】Re:ACCESSからEXCELのピボットテーブル作成 小僧 05/4/27(水) 16:40 回答
【4968】Re:ACCESSからEXCELのピボットテーブル作成 VBA超初心者 05/4/27(水) 16:55 発言
【4969】Re:ACCESSからEXCELのピボットテーブル作成 小僧 05/4/27(水) 17:22 回答

8207 / 9994 ←次へ | 前へ→
ページ:  ┃  記事番号:
1078265
(SS)C-BOARD v3.8 is Free