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

執筆者:

関連記事

no image

DoCmd.GoToRecordよりもMe.SaveよりもMe.Refresh

Accessで、一旦フォーム上のレコードを保存したいとき、 Me.Save とやってもレコードが保存されない。 そこで、今までは、DoCmd.GoToRecordで無理矢理レコードを移動して保存してい …

no image

Accessでのテーブルのエクスポート定義

Access2007のテーブルをcsv保存したいのだが、結果ファイルにダブルコーテーションを付けたくない・・・。 ダブルクォーテーションつきであれば、例えば、 DoCmd.TransferText a …

no image

Accessでレコードコピー(オートナンバー除く)の決定版のコード!

Accessで、レコードのオートナンバーを除くフィールドを1行、複製(コピー)したくって、Google検索したのだけどなかなか出てこず、しかしやっと見つけた、黄金のソース・・・・。 [VBA] ADO …

no image

AccessやExcelで作ったハイパーリンクではChromeブラウザ上のGmailの受信トレイを検索できんかった・・・がShellならできた

Accessのフォームにつくったボタンをクリックしたら、ハイパーリンクに変数がセットされ、その変数でGmailの受信トレイを検索する・・・・といった仕組みを作りたかった。 Private Sub cm …

no image

VBAで英字混じりの引数から数字のみを取り出す関数

たとえば、abcABC123456XYGという引数から、123456のみを取り出したい。 VBAの組み込み関数で、適当なのがありそうだけど、無いみたい。 カスタム関数を作るにも、これはという情報がググ …