単二電池

アクセス2010でテーブルに連結した取引台帳を入力フォームがあります。
そのフォームで入力後、コマンドボタンで印刷を実行します。
コマンドボタンには、マクロで

レポートを開く
レポート名 請求書発行レポート
ビュー 印刷
フィルター名 なし
Where条件式 =[契約NO]=[Forms]![取引台帳入力フォーム]![契約NO]
ウィンドウモード 標準

と、開いているフォームのページがレポート印刷されるようにしました。
ですが、モノクロ・カラー印刷と印刷の都度設定したいので、印刷が実行される前に
印刷ダイアログを表示させたいのです。
この方法を、どうぞ教えていただきたくお願いいたします。

A 回答 (3件)

訂正です。


No2の

Private Sub コマンド1_Click()
DoCmd.SelectObject acReport, "レポート1", acViewPreview, , "契約NO=" & Me!契約NO
DoCmd.RunCommand acCmdPrint
End Sub

の、

>DoCmd.RunCommand acCmdPrint



SendKeys "%{F}{P}", True

に変更してください。したがって、

Private Sub コマンド1_Click()
DoCmd.SelectObject acReport, "レポート1", acViewPreview, , "契約NO=" & Me!契約NO
SendKeys "%{F}{P}", True
End Sub

のようになります。あとはNo2に準じます。
    • good
    • 0

No1です。

No1の参照先ではVBAを使っているので、以下のように
なります。

「取引台帳入力フォーム」のテキストボックスの名前が「契約NO」で、
かつレポートのソーステーブルのフィールド名も「契約NO」とします。
ボタンも「取引台帳入力フォーム」にあるものとします。


「契約NO」が数値型の場合は、

Private Sub コマンド1_Click()
DoCmd.SelectObject acReport, "レポート1", acViewPreview, , "契約NO=" & Me!契約NO
DoCmd.RunCommand acCmdPrint
End Sub

のように。もしテキスト型の場合は、

>DoCmd.SelectObject acReport, "レポート1", acViewPreview, , "契約NO=" & Me!契約NO



DoCmd.OpenReport "Rep1", acViewPreview, , "職業='" & Me!契約NO & "'"

としてください。



もし、どうしてもマクロを使わなくてはならないのであれば、
設定しているマクロで、

「レポートを開く」

に続いて、

「キー送信」

を選択し、そのアクションの引数で、

キー操作  %{F}{P}
待機    いいえ

に設定してください。
    • good
    • 0

探せばいろいろありますが、以下では?



http://www.accessclub.jp/samplefile/samplefile_9 …
「印刷前に印刷 ダイアログ ボックス を開く方法」
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!