• ベストアンサー

ACCESSのVBAでプリンタを指定したい

ACCESSでレポートを2つ作成し、フォームのボタンでレポートの印刷を行っています。 押されたボタンで、印刷するレポートが違うのですが、その時に、プリンタを指定したいのです。 Private Sub レポート印刷_Click() Dim stDocName As String stDocName = "レポート印刷" DoCmd.OpenReport stDocName, acNormal End Sub 上記のような感じで作っているのですが、それぞれのレポートで印刷するプリンタが違います。 どのようにしたらいいでしょうか?

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

  • ベストアンサー
  • snoopy64
  • ベストアンサー率42% (337/793)
回答No.1

そのレポートをデザインビューで開き、「ファイル→ページ設定→ページ」の「印刷」で「その他のプリンタ」を選び、印刷させたいプリンタを指定すればいけます。 頑張ってくださいヽ(^。^)ノ

ayu134
質問者

お礼

無事できました。 ありがとうございます。 VBAで指定することばかり考えていて、レポートのページ設定で出来るなんて知りませんでした。 本当にありがとうございました。

関連するQ&A

  • Access[イベント プロシージャ]について質問です。

    フォーム上にある『プリント』ボタンをクリックすると、レポートを印刷するようにしています。(以下のとおり) Private Sub レポートの印刷_Click() On Error GoTo Err_レポートの印刷_Click Dim stDocName As String stDocName = ChrW(12463) & ChrW(12524) & ChrW(12540) & ChrW(12512) & ChrW(20966) & ChrW(29702) & ChrW(31080) DoCmd.OpenReport stDocName, acNormal Exit_レポートの印刷_Click: Exit Sub Err_レポートの印刷_Click: MsgBox Err.Description Resume Exit_レポートの印刷_Click End Sub このプリントボタンをクリックした時に『印刷』というチェックボックスにチェックを入れるにはどのように書き換えればよいのでしょうか?

  • Access2000でリスト指定の印刷

    現在Access2000で顧客管理のデータベースを作成しています。 指定したレコードだけを印刷する、指定レコード印刷フォームを作成しようと思い、フォームにリストボックスを貼り付け、そのフォームに印刷ボタンを作成しました。 その、印刷ボタンのプロパティ(クリック時)のイベント設定は、次のように設定したのですが、うまく動きません。 Private Sub 印刷ボタン_Click() On Error GoTo Err_印刷ボタン_Click Dim stDocName As String Me.Visible = False stDocName = "kokyaku_report" DoCmd.OpenReport stDocName, acNormal, , "id = " & id Exit_印刷ボタン_Click: Exit Sub Err_印刷ボタン_Click: MsgBox Err.Description Resume Exit_印刷ボタン_Click End Sub ちなみに、テーブルの主キーは「id」としております。 申し訳ありませんが、お分かりの方がいらっしゃったら宜しくお願い致します。

  • access vba レポートを複数部印刷

    MS-Access 2007です。 VBAでレポートを印刷しています。 2部印刷したいときはどのようにすればよいでしょうか。 現在は Dim stDocName As String stDocName = "請求書印刷" DoCmd.OpenReport stDocName, acNormal で一部印刷しています。 二回繰り返せば2枚出ますが2部としてプリンターに送りたいのです。 宜しくお願いします。

  • ACCESSフォームフィルタで抽出したデータのみをレポートで表示する方法

    フォームフィルターでデータを抽出した後,抽出されたデータのみをレポート上に表示させるコマンドボタンをフォーム上に作っています。 下記のコードを作成しましたが,これだと抽出前の全部のデータが表示されてしまいます。 どうしたら良いでしょうか。 Private Sub ラベルプレビュー_Click() Dim stDocName As String DoCmd.Echo False, stDocName = "rpt宛名ラベル" DoCmd.OpenReport stDocName, acViewDesign DoCmd.SelectObject acReport, stDocName, False ' Reports(stDocName).RecordSource = Me.RecordSource DoCmd.OpenReport stDocName, acViewPreview End Sub

  • アクセスのレポートの印刷について。

    アクセスで報告書を作成し、印刷する時に、ウィザードを使って作ったコマンドボタン「報告書の印刷」を使用したいのですが、全てのレコードが印刷されます。以下の記述でどこを変更すればよいか教えてください。 また、基本的な質問なのですが、レポートのプレビュー上にコマンドボタンを配置することは可能でしょうか?(やはり、無理でしょうか?) よろしくお願いいたします。 Private Sub 報告書の印刷_Click() On Error GoTo Err_報告書の印刷_Click Dim stDocName As String stDocName = ChrW(22577) & ChrW(21578) & ChrW(26360) DoCmd.OpenReport stDocName, acNormal Exit_報告書の印刷_Click: Exit Sub Err_報告書の印刷_Click: MsgBox Err.Description Resume Exit_報告書の印刷_Click End Sub

  • アクセス 開いているレポート名を取得する。

    アクセス初心者です。 VBAにて フォーム1でレポート、レコードを選択後に レポートを開くと同時に印刷フォームも開くように組んでます。 その印刷フォームで印刷をすると、印刷フォーム自体が印刷されてしまうので ”レポート名”を認識させてから印刷しています。 その時の”レポート名”を開いたときに自動的に変数として印刷フォームに引き継ぎたいのですが やり方が分かりません。 意図としては、印刷フォームを汎用的に使いたいためです。 印刷フォームの呼び出しコードは下記にて Private Sub コマンド18_Click() Dim report_name As String Dim report_value As String If Not IsNull(コンボ50.Value) = True Then report_name = コンボ48.Value  ’レポート名です report_value = コンボ50.Value DoCmd.OpenReport report_name, acViewPreview, , "[現場名]='" & report_value & "'" DoCmd.MoveSize Width:=10000, Height:=13000 Reports(report_name).ZoomControl = 75 Else MsgBox "項目を選択してください。" End End If DoCmd.OpenForm "印刷_フォーム", acNormal End Sub Private Sub コマンド53_Click() Dim new_date As String Dim form_name As String If Not IsNull(コンボ48.Value) = True Then form_name = コンボ48.Value DoCmd.OpenForm form_name, acNormal, , , acFormAdd DoCmd.MoveSize Width:=12000, Height:=13000 Else MsgBox "[取引先名]を入力してください。" End If End Sub 下記は印刷フォームにて、印刷設定をする場合のコードです Private Sub コマンド0_Click() Dim report_name As String report_name = "レポート名" On Error Resume Next DoCmd.SelectObject acReport, report_name, True DoCmd.RunCommand acCmdPrint End Sub

  • プリンターを指定して印刷するには

    アクセスです。 フォームのコマンドボタンをクリックしてレポートを開きます。 VBAコードは Private Sub コマンド0_Click() DoCmd.OpenReport "レポート1" End Sub です。 レポートが開いたら、自動で印刷されますが、 それは、通常使うプリンタに設定しているプリンタで印刷されてしまいます。 そうではなく、 Bullzip PDF PrinterでPDF化させたいのですが、 レポートのイベントで、 Private Sub Report_Open(Cancel As Integer) End Sub で、プリンタを指定することは可能でしょうか? 通常使うプリンタは Bullzip PDF Printerにはしたくないのです。 わがまま言ってごめんなさい。

  • Access VBAでのフィルタ処理

    アクセス2003を使用しています。 今VBAを使用して、フォームのテキストボックスに記入された文字列を検索条件に、 クエリからデータ抽出したいのですが、 うまくいきません。 解決したい事は、 「abc*」といったように、前方が一致している文字列データを すべて抽出するといった処理です。 今は下記のようなプログラムを組んでいます。 Private Sub コマンド1_Click() On Error GoTo Err_コマンド1_Click Dim stDocName As String Dim stLinkCriteria As String stDocName = "クエリ1" DoCmd.OpenQuery stDocName, acNormal, acEdit If IsNull(テキストボックス) Then Else stLinkCriteria = "[クエリデータ]=" & "'" & Me![テキストボックス] & "'" End If DoCmd.ApplyFilter stDocName, stLinkCriteria Exit_コマンド1_Click: Exit Sub Err_コマンド1_Click: MsgBox Err.Description Resume Exit_コマンド1_Click End Sub これだと完全に一致しなければ抽出してくれません。 どの様に変更すればよいでしょうか? よろしくお願いします。

  • アクセスのイベント記述について。

    アクセスのあるフォームA上にある詳細ボタンをクリックすると別のフォームCが開くようにしてあるのですが、クリックすると同時にAフォームを閉じるにはどのように記述したらよいでしょうか? 詳細ボタンの記述は下記のとおりです。よろしくお願いいたします。 Private Sub 詳細_Click() On Error GoTo Err_詳細_Click Dim stDocName As String Dim stLinkCriteria As String DoCmd.Close stDocName = ChrW(12513) & ChrW(12531) & ChrW(12486) & ChrW(12490) & ChrW(12531) & ChrW(12473) stLinkCriteria = "[管理番号]=" & Me![管理番号] DoCmd.OpenForm stDocName, , , stLinkCriteria Exit_詳細_Click: Exit Sub Err_詳細_Click: MsgBox Err.Description Resume Exit_詳細_Click End Sub

  • access2000のVBAのことで教えてください。

    プログラム初心者でプログラム作った方がいきなり辞めてしまって困ってます。 市販の本とか見ても解りませんし、質問の仕方も良くわかりませんが 教えてください。 マクロの項目には何も無くマウスクリック時のイベントプロシージャでボタンを作ってるようです。 下記のプログラムですがクエリどこの命令文なるのですか? Private Sub 顧客名検索_Click() On Error GoTo Err_顧客名検索_Click Dim stDocName As String Dim stLinkCriteria As String stDocName = \"F_顧客名検索\" DoCmd.OpenForm stDocName, , , stLinkCriteria Exit_顧客名検索_Click: Exit Sub Err_顧客名検索_Click: MsgBox Err.Description Resume Exit_顧客名検索_Click End Sub