MS Access

Accessで複数の用紙サイズ・向きの帳票を印刷したいが2枚出るとか、思ったようにならないなら

投稿日:

私がAccessで作った会社の業務管理システムは、帳票類がほとんどA4縦の用紙で出力されるようになっている。
しかし、一部の帳票、というか封筒は、長三サイズと、角6サイズをの用紙にしないと、プリントが2枚出たり、カセットの用紙から出たり、思ったように動作してくれない。
これは、AccessのなかでA4縦サイズが基本になっていて、それ以外のサイズで出力したい場合は一度、ページ設定が必要になるからだ。
(Accessさまの都合で、という気がしなくもない)。

そこで、こうした。

DoCmd.OpenReport “kaku6futo”, acViewPreview, “ラベル指定印刷q”, r
DoCmd.RunCommand acCmdPageSetup

2行目に書いた処理で、ページ設定のダイアログボックスを出す。
ここで、使う人に、用紙サイズが正しいかをチェックしてもらったうえで、プリントしてもらう。

いつのバージョンからかわからないけど、Accessではレポートと用紙サイズを覚えてくれるようになった。
けど、プログラムファイルを変えるとまた元通りになる。
なので、一応こういう仕組みも、未だ必要ですね。

参考:Excel VBA を学ぶなら moug モーグ | 即効テクニック | レポートの[ページ設定]ダイアログボックスを表示する

-MS Access

執筆者:

関連記事

Access「実行時エラー3061 パラメータが少なすぎます。2を指定してください」で意外な決着

クロス集計クエリをVBAで読むときで、かつパラメータクエリを使う場合には、クエリのパラメータパネルで、別途、パラメータを指定しなくてはならない(VBAで使わないなら不要) 本日のトラブルは、その後、W …

no image

客先で動かしているAccessとFAXの連携システムが昨日から止まっている

これまでのWindowsXP+OutlookExpressであれば問題なかった。 しかし、OSはWindows7になってしまい、メールはWindowsLiveメールになってしまった。 そしてWindo …

no image

AccessのレポートでNoDataでイベントキャンセル後もReport_Closeが実行されて困った

Accessのレポートで表示するデータがない場合は、以下のように書けばスマートにキャンセルできる。 Private Sub Report_NoData(Cancel As Integer) MsgBo …

no image

ExcelブックをAccessで読みたいときにリンクテーブルを使わない方法があったとは・・・知らなかった

とある業務で、Access内でExcelブックをリンクテーブルで読む・・・という使い方をしてきた。 (AccessのmdbはNASにおいて共有している。Excelのxlsも同じく) これはこれで便利な …

no image

パラメータクエリにパラメータをセットして実行した結果をデータシートで表示する」というコードの実行で3065エラー

Accessの仕様として、パラメータクエリだけが駄目なのかと思ったら、なんと選択クエリが駄目なのだそう。 理由は、Executeメソッドはアクションクエリのもので、選択クエリのものではないからだそう。 …