Access VBA質問箱 IV

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

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


4643 / 9994 ←次へ | 前へ→

【8595】Re:Printerオブジェクトを使用したVBAでのレポートのページサイズ設定
発言  leo  - 06/9/15(金) 14:50 -

引用なし
パスワード
   どうやらできました!

> acViewNormalじゃなくacViewPreviewでプレビューしてみるとどうですか?
> あとacHiddenとったらどうですか?

acHiddenを削除するだけでは変化ありませんでした。

プレビューにしたところ、無事に用紙サイズの変更を反映させることができました。以下に成功したコードを記載いたします。何かご意見があればお聞かせ下さい。

なお、コード中では、TBL_NAME_PRT_UKEというプリンタ名、用紙サイズを持つテーブルから各値を取得しています。また、元々acViewNormalでの使用感に近づけるため、acHidden、PrintOutメソッドを使用しております。

本当に助かりました。どうもありがとうございました。

モジュール:

Public Function print_Report() As Byte
On Error GoTo print_Report_Err

  print_Report = 9
  
  Dim prt As Printer
  Dim valPaperName As Variant
  
  Echo False
  
  'レポートを印刷対象として設定
  Set prt = Application.Printers(DLookup("PRT_NM", TBL_NAME_PRT_UKE, "SIYO_FLG=true"))

  ' 選択したプリンタをこのセッションで通常使うプリンタとして設定します。
  valPaperName = DLookup("PAPER_SIZE", TBL_NAME_PRT_UKE, "SIYO_FLG=true")

  Set Application.Printer = prt

  'DoCmd.openReport REPORT_NAME, acViewNormal, , , , acHidden
  DoCmd.openReport REPORT_NAME, acViewPreview, , , , acHidden
  
  DoCmd.SelectObject acReport, REPORT_NAME, True
  DoCmd.PrintOut

print_Report_Exit:
  Echo True

  print_Report = 0
  Exit Function

print_Report_Err:
  MsgBox Err.Description
End Function

レポート:
Private Sub Report_Open(Cancel As Integer)
  Dim valPaperName As Variant
  
  valPaperName = DLookup("PAPER_SIZE", TBL_NAME_PRT_UKE, "SIYO_FLG=true")
  
  Me.Printer.PaperSize = Left(valPaperName, InStr(1, valPaperName, " ") - 1)
  
End Sub

1,452 hits

【8574】Printerオブジェクトを使用したVBAでのレポートのページサイズ設定 leo 06/9/13(水) 18:05 質問
【8576】Re:Printerオブジェクトを使用したVBAでのレ... 立ち寄り 06/9/14(木) 14:02 回答
【8577】Re:Printerオブジェクトを使用したVBAでのレ... leo 06/9/14(木) 15:38 発言
【8579】Re:Printerオブジェクトを使用したVBAでのレ... 立ち寄り 06/9/14(木) 16:15 回答
【8580】Re:Printerオブジェクトを使用したVBAでのレ... leo 06/9/14(木) 17:04 発言
【8581】Re:Printerオブジェクトを使用したVBAでのレ... 立ち寄り 06/9/14(木) 17:22 回答
【8583】Re:Printerオブジェクトを使用したVBAでのレ... leo 06/9/15(金) 9:58 発言
【8584】Re:Printerオブジェクトを使用したVBAでのレ... 立ち寄り 06/9/15(金) 10:41 回答
【8585】Re:Printerオブジェクトを使用したVBAでのレ... leo 06/9/15(金) 11:20 発言
【8586】Re:Printerオブジェクトを使用したVBAでのレ... 立ち寄り 06/9/15(金) 11:53 回答
【8588】Re:Printerオブジェクトを使用したVBAでのレ... leo 06/9/15(金) 12:23 発言
【8594】Re:Printerオブジェクトを使用したVBAでのレ... 立ち寄り 06/9/15(金) 13:41 回答
【8596】Re:Printerオブジェクトを使用したVBAでのレ... leo 06/9/15(金) 14:59 お礼
【8587】Re:Printerオブジェクトを使用したVBAでのレ... 06/9/15(金) 12:15 発言
【8589】Re:Printerオブジェクトを使用したVBAでのレ... leo 06/9/15(金) 12:44 発言
【8590】Re:Printerオブジェクトを使用したVBAでのレ... 06/9/15(金) 13:05 発言
【8591】Re:Printerオブジェクトを使用したVBAでのレ... leo 06/9/15(金) 13:21 発言
【8593】Re:Printerオブジェクトを使用したVBAでのレ... 06/9/15(金) 13:35 発言
【8595】Re:Printerオブジェクトを使用したVBAでのレ... leo 06/9/15(金) 14:50 発言
【8598】Re:Printerオブジェクトを使用したVBAでのレ... 06/9/15(金) 16:37 発言

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