#536 | スナップショットを使ってフォーム内にレポートを表示する方法 | フォーム、VBA | |
一般的に、Accessのフォームの中にレポート(プレビュー状態のもの)を表示させることは面倒なプログラムを使わないと実現できません。サブフォームのようにしてレポートオブジェクトをフォームのデザイン上に挿入することもできません。 しかし、レポートの印刷内容を外部のファイルとして保存したスナップショット形式のファイル(拡張子.snp)と、それを見るための「Snapshot Viewer Control」を利用することで、フォーム内にレポートを表示させることができます。 ここでは、次のような流れを例としてそのようなフォームを作ってみます。
※Snapshot Viewer Controlでは表示するファイルをプロパティシートで固定的に指定することもできますので、常に同じパスのファイルを表示する場合には、ソースを動的に切り替える処理は不要となります。ただしレポートの内容はデータの変化に応じて変わることが多いと思いますので、何らかのタイミングで.snpファイルを最新状態にするために再生成する処理は必要かもしれません。 それでは実際にフォームを作ってみましょう。
実行例: クリック前の状態 クリック直後(レポートが.snpに出力されるところ) レポート表示後 レポートは表示サイズを変えることも可能
|
|||
|
Copyright © T'sWare All rights reserved |