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

Accessで1件ずつレコードを読んでスナップショットファイルを作ってメール送信する処理

作るのにWebに情報が無くてすごく苦労したので備忘録。 私にしかわからないかもしれないけど、見た人も何か参考になるかもしれないから、公開しよっと。 ■事前準備 1.処理を起動するフォームにボタン「調査 …

no image

VBAで忘れてしまっていたことと、知らなかったこと

STOPステートメント: ブレークポイントを設定しないでもその行でコード処理を止めることができるので、Access終了->Access起動といったシチュエーションで使える。 Randomizeステート …

no image

Accessで DoCmd.RunSQL を CurrentDb.Executeにしたら、1秒高速化した

処理が遅いので速くして欲しいとの要望があったので、コードを調査。 DoCmd.RunSQL を CurrentDb.Execute に置き換えると非同期で実行されるとの情報を得たので、試す。 結果、6 …

no image

Accessで「イベントプロパティに指定した式MouseMoveでエラーが発生しました。フォームまたはレポート上のActiveX コントロールを読み込むときにエラーが発生しました。」

フォームに配置したプログレスバーコントロールの上をマウスポインタが横切ろうとすると、必ず上のエラーメッセージが表示される。 原因がわからず、対処もできず、困っていた。 Google先生も頼りにならず、 …

no image

.htaccessと25番ポートブロック

初めてレンタルサーバの乗り換えにチャレンジした、昨日客先。 前日から今朝まで、新アドレスでの表示はずっと「500 Internal Server Error」。 乗り換え先レンタルサーバにサポート依頼 …