• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:AccessにてExcelの印刷範囲を設定したい)

AccessでExcelの印刷範囲を設定する方法

このQ&Aのポイント
  • AccessからデータをExcelへエクスポートする際、印刷範囲の指定を行いたい場合、いくつかの手順があります。
  • しかし、指定したセルに値をセットした後に印刷範囲を設定する方法は通常は機能しないようです。
  • Access上ではExcelの印刷範囲を指定することは難しいかもしれません。

質問者が選んだベストアンサー

  • ベストアンサー
  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.1

GetObject関数 http://officetanaka.net/excel/vba/function/GetObject.htm を参考に Dim xlapp As Object Set xlapp = GetObject(, "Excel.Application") xlapp.ActiveSheet.PageSetup.PrintArea = "$A$1:$I$30" とかかな?(自信ないですけど)

nekoB
質問者

お礼

Dim xlapp As Object ・ ・ ・ Set xlapp = GetObject(, "Excel.Application") xlapp.ActiveSheet.PageSetup.PrintArea = "$A$1:$I$30" と記述したところ、無事に印刷範囲が設定できました。 Setしていなかったのと、Objectを宣言していなかったのが原因だったんですね(汗 ありがとうございました!

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

この質問は内容的にはエクセルVBAの質問か。 実行はエクセルからではなくアクセスVBAからか。「アクセス上では(エクセルの操作が出来ない・)」と言う表現は無いのでは。 ーー Googleで「オブジェクト変数またはwithブロック変数が設定されていません excel」で照会すればたくさん記事が出ます。どれに当たるか調べてください。 ActiveSheetを臨時に、Worksheets(”XXX”)と具体名を入れて指定し、実行してうまく行きませんか。もし旨く行けばエラーはこの表現にかかわるものでしょう

nekoB
質問者

補足

説明が足りませんでした。すみませんでした。 >AccessからデータをExcelへエクスポートした際、 >印刷範囲の指定を行いたいのですが、うまくいきません。 >データを指定したセルにセットした後、 >ActiveSheet.PageSetup.PrintArea = "$A$1:$I$30" >と指定しているのですが、 と記述したのですが、わかりづらかったでしょうか? 一応VBAのコードを書いたので、アクセス上というのは 「ACCESS VBA上では・・・」という意味だったのですが・・・。 n-junさんのコードを記述したところ、無事印刷範囲が設定できました。 imogasiさんもご教授頂きありがとうございました。

関連するQ&A

専門家に質問してみよう