IT仕事 MS Access

フォームを直接Accessで印刷プレビューし、閉じるときのイベントで処理をしたい

投稿日:

困ったこと:

前提として、自分とこのシステムは、フォームを直接Accessで印刷プレビューして、そのまま印刷できるように作ってある。

しかし、リボンに印刷プレビューを閉じるボタンがある一方で、フォームの右に閉じるボタンが表示されているので、後者をユーザーが誤って押してしまうことがある。
すると印刷プレビューを終えるつもりがフォームを閉じることになってしまう。
再度、呼び出したいフォームを探して開くのは面倒・・・。

やりたかったこと:

リボンの印刷プレビューをクリックすると、フォームウィンドウを最大化してプレビューする(ここは簡単、DoCmd.Maximizeで)。
印刷プレビューを閉じると、フォームウィンドウのサイズが元に戻る(ここがわからん)。

難しかったこと:

印刷プレビューを閉じた際のイベントトリガーがAccessにあるのかないのかわからず、調べるのにずいぶん時間がかかった。

以下の達人のブログを拝見し、イベントを追跡する方法があることを発見し、フォームのプロパティの各所にイベントトラップを仕掛けて、調査した。感謝。
■T’sWare イベント徹底活用 1 ~フォームのオープン・クローズ~

できた:

フォームの「レコード移動時」イベントに記述した処理で、目的が達成できることを発見。
具体的には、以下のコードでOK。

Private Sub Form_Current()
'印刷プレビューから戻るときにフォームのサイズを変える
'■T'sWare イベント徹底活用 1 ~フォームのオープン・クローズ~
'http://tsware.jp/study/vol5/event_01.htm
    DoCmd.Restore
End Sub

-IT仕事, MS Access

執筆者:

関連記事

no image

秀丸マクロで、HTMLの幅と高さを削除する

正規表現を使い、さらにスペースや文字数に配慮すればするほど、わかりにくいコードになる・・・もうちょっと改善の余地があるのかもしれないが、自分のスキル的にココまでが限界。 replaceallfast …

PhotoshopElementsで写真の角を丸くする その2

込み入った写真の場合、境界線がはっきりせず、上記の方法が使えなかった・・・以下、別のやり方。   1.シェイプツールの角丸長方形で写真の上にシェイプのレイヤーを作る。このとき描画色は写真に含まれない色 …

no image

ExcelVBA苦しみの続き

「コメント」の取得や消したり書いたり見えなくしたはどうすればで苦しむ。 ピボットテーブルのレコードソースを他のブックに対しクエリを発行したモノにしたいのだが、その方法も方々探すも分からず苦しむ。 ネッ …

no image

人気試験となるか

IPAが新しいセキュリティ試験をやるらしい。 新試験区分『テクニカルエンジニア(情報セキュリティ)試験』創設 http://www.jitec.jp/1_00topic/topic_20050901_ …

Chrome拡張機能isearでWebベースの受注管理システムのアシスト(めちゃ楽!)

毎日の仕事で、CSV入出力でのデータ消込ができないブラウザベースの受注管理システムを使っている(GoQってやつ)。 やりたいことは 未入金の注文データについて、その中から該当する複数ある注文番号でフィ …