Access (VBA)

Access VBAに関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 10 Pro : Access 2016)
フォームを1枚に収めて印刷したい
投稿日時: 19/08/07 14:10:11
投稿者: dekoderu

Accessのフォームを印刷した時に1ページに収まらずにはみ出て印刷されます。
フォームのサイズが大きいからなのですが、
余白の調整などをしたのですが、出来ませんでした。
フォームのサイズを変えずにエクセルのような
縮小して1枚で印刷みたいな事はできるのでしょうか?
 
以下のコードで行いました。
DoCmd.RunCommand acCmdPrint
 
お手数をおかけしますが
ご教授いただければ幸いです。

回答
投稿日時: 19/08/07 16:15:06
投稿者: sk

引用:
Accessのフォームを印刷した時に1ページに収まらずにはみ出て印刷されます。
フォームのサイズが大きいからなのですが、
余白の調整などをしたのですが、出来ませんでした。
フォームのサイズを変えずにエクセルのような
縮小して1枚で印刷みたいな事はできるのでしょうか?

それに相当する機能は Access のフォーム/レポートにはありません。
 
例えば「A4 用紙に縦向きで印刷する」という前提の場合は、
その用紙サイズ/印刷の向きに応じた定型帳票として
デザインされたレポートをあらかじめ作成しておくのが
( Access における)一般的な手法です。
 
また、ご質問の主旨は「フォーム/レポートのレコードソース
であるテーブル/クエリのレコード件数が何件になろうが
(どれだけ多くなろうが)1 ページに収めたい(改ページしたくない)
ということだと思いますが、Access のフォーム/レポートの
ページ設定には「印刷時の変倍率」を指定するプロパティは
ありませんので、原則的には無理です。
(せいぜい「そういうレイアウトのフォーム/レポートを自動生成する」
という代替策ぐらいしかないでしょう)
 
「 Excel みたいなこと」を無理やり Access でやろうとするより、
Access データベース上のデータ(テーブル/クエリのレコード)を
Excel ワークシートに出力して「 Access のフォーム/レポートと
似たようなレイアウトの表」を自動作成する形を取られた方が
ご期待されているような結果を得られるのではないかと思います。

投稿日時: 19/08/09 12:19:29
投稿者: dekoderu

返信ありがとうございます。
 
エクセルに出力する対応を検討します。
大変助かりました。