- ベストアンサー
コンボボックスの印刷ボタンについて
- フォームで見ている画面だけを印刷するためのコンボボックスを作成しましたが、すべてのデータが印刷されてしまいます。どこを変更すれば1枚だけ印刷ができるのでしょうか?
- コンボボックスウィザードを使用して印刷ボタンを作成しましたが、印刷されるデータが全てで困っています。どの部分を修正すれば1枚だけ印刷できるようになるでしょうか?
- フォームの特定の画面のみを印刷するためにコンボボックスを作成しましたが、すべてのデータが印刷されてしまいます。どの箇所を変更すれば1枚だけ印刷できるようになるでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
フォームで見ている画面だけを印刷するには画面をコピーして Excel等に貼り付け、余分な部分をトリムして印刷します。 画面をコピーするにはキーボード最上段右側にある[PRTSC] DoCmd.SelectObject acForm, stDocName, True この文はには印刷対象とする条件がありませんね 従ってフォームの対象になっているレコード全てですね この命令文には抽出条件を定義することができないようです。 フォームを開くときにレコードを絞り込みます。 コーディングに拘らないなら 次の2つの方法があります。 1.フォームを開いて印刷 [ファイル]→[印刷]→[印刷] この方法も対象を絞り込む設定はできません ※ ボックス単位で[画面のみ、印刷のみ、画面/印刷]の設定が セルのプロパティの書式タグの下の方に表示対象で設定します。 (既定値は印刷/画面) 2、マクロで [コンポボックスをフォームに配置]→[フォームの操作]→[カレントフォームの印刷] [次へ]→[ボタン表示の選択]→[ボタンの名称入力]→[完了] 蛇足 Me.年_____齢 = Int(DateDiff("d", [生年月日] - 1, Date) / 365.25) Me.年_____齢 = Int(DateDiff("Y", [生年月日] - 1, Date)) Private Sub XXXX()とEnd Subの間が空白のコードは削除しておきましょう。
その他の回答 (1)
- m3_maki
- ベストアンサー率64% (296/460)
ウィザードが作成するコードは ボタンが存在するフォームと 印刷されるフォームが異なる場合のものです。 同じフォームの場合に カレントレコードを印刷する場合は 次のような簡単なものとなります。 実質的には、1行のみですね。 Private Sub cmd印刷_Click() On Error GoTo Err_cmd印刷_Click DoCmd.PrintOut acSelection Exit_cmd印刷_Click: Exit Sub Err_cmd印刷_Click: MsgBox Err.Description Resume Exit_cmd印刷_Click End Sub
お礼
お礼が遅くなりました。ありがとうございました。
補足
上記を消して 下記に書き換えましたが、つぎはボタンは押せるのですが 印刷されません。 どうしてでしょうか
お礼
お礼が遅くなりました。ありがとうございました。