|
環境:AC2003 , Windows XP SP2
お世話になっております。
現在、Printerオブジェクトを使用したVBAでのレポートのページサイズ設定の
ロジックを作成しております。
このサイトを始め、いろいろなサイトを回ってそれらしいコードを書くことが
できたのですが、PageSizeプロパティの変更がうまく反映されてくれません。
具体的には、15行目のPageSizeプロパティの設定がレポートに反映されず、
デザインビューで設定したA4で印刷されてしまいます。
手を尽くした(つもり)なのですが、解決法を見つけることができませんでした。
当方初心者のため、常識的な設定が抜けているのかと思い投稿させていただきました。何かご存知の方、ご教示下さい。
コードは以下です。
1:Public Function print_Report() As Byte
2:On Error GoTo print_Report_Err
3:
4: Dim prt As Printer
5: Dim valPaperName As Variant
6:
7: Echo False
8:
9: 'レポートを印刷対象として設定
10: DoCmd.SelectObject acReport, REPORT_NAME, True
11:
12: Set prt = Application.Printers("test")
13:
14: ' 選択したプリンタをこのセッションで通常使うプリンタとして設定します。
15: prt.PaperSize = acPRPSA3
16:
17: Set Application.Printer = prt
18:
19: DoCmd.openReport REPORT_NAME, acViewNormal, , , , acHidden
20:
21:print_Report_Exit:
22: Echo True
23:
24: print_Report = 0
25: Exit Function
26:
27:print_Report_Err:
28: MsgBox Err.Description
29:End Function
|
|