Microsoft Access Club >SampleFile >インデックス >このページ >次頁 < 前項  サイト内検索


写真付レポートの作成:SampleFile077



No.63の参考ファイルで写真付フォームの作成をご紹介しましたね。テーブルのフィールドに画像のパス情報を格納し、次々フォーム上に表示させる方法です。しかし、フォームではなくレポートで表示させたい場合もあるでしょう。しかし、ご紹介した方法はフォーム上でしか動作しません。今回は、レポートで写真付の社員情報リストの作成方法を ご紹介します。

サンプルテーブルの作成

下記のようなテーブル(tbl_sample)を作成します。

 

デザインビューで開くと、須加のようになっています。なお、パスを格納するフィールドは、テキストボックス型としています。

テーブルデザインビュー図

 

レポートの作成

tbl_sampleテーブルを基にしたレポートを作成します。以下は、デザインビューでレポートを開いたところです。

レポートのデザインビュー図

 

イメージコントロールの貼り付け

ちょっと見辛いですが、レポートの詳細セクション部分にイメージコントロールを貼り付けています。

ピクチャタイプ
  • ピクチャタイプは、リンク形式と埋め込み形式があります。表示のスピードを考えると断然リンク形式ですが、 特定のPCが決まっていない場合は、埋め込み型にすることもできます。

 

イメージコントロールのプロパティ図

 

留意点

画像が表示されない場合に、以下のメッセージを表示させます。

  • パスが空白である。

  • 指定したパスが誤っている。

レポートの詳細セクションのフォーマット時イベントプロシージャの作成

レポートの詳細セクションのフォーマット時イベントに以下のよう なプロシージャを記述します。なお、記述するイベントは、フォームの時と異なりますので注意して下さい。

Private Sub 詳細_Format(Cancel As Integer, FormatCount As Integer)

On Error GoTo エラー発生
    
    Me.ラベル.Visible = False
    Me.イメージ.Visible = True
    
        'テキストボックスである「パス」に記述されている場合。
        If Not IsNull(Me.txtパス) Then
            Me.イメージ.Picture = Me.txtパス
            
        'テキストボックスである「パス」に記述されていない場合。
        Else
            Me.ラベル.Visible = True
            
            '写真を表示する「イメージ」を非表示にします。
            Me.イメージ.Visible = False
        End If
        
    Exit Sub
     
エラー発生:

    Me.イメージ.Visible = False
    Me.ラベル.Visible = True
    Resume Next

End Sub

 

解説
  • Not IsNull()を用いて、txtパステキストボックス覧が空白であるか否かを確認します。空白の場合は、とエラーが発生します。

  • 間違ったパス名の場合は、事前チェックを行うのが難しいので、エラー処理に移行させて処理を終えます。

  • フォームの場合は、移動時のイベントに毎回、テキストボックス「パス」の内容の有無を確認させて処理を行っていましたが、これをそのままレポートに当てはめると、前回の イメージファイルが消えずに残った処理になってしまいます。よって、イメージファイルのパスの記述がない場合、及びエラー発生時の場合は、イメージ コントロール自体を非表示にしています。

  • 初期の設定がCドライブの03-22ホルダーから画像データを導いています。これは、変更できるので皆さんの環境に合わせた変更処理を必ず行って下さい。なお、サンプルファイルは、C ドライブのへ解凍して下さい。

 

関連ページ

 

 

ページの先頭へ 前ページへ戻る

 


写真付レポートの作成:SampleFile077


 

-Microsoft Access Club-