-
三流君の [コンビニ系HPへ] [VBA系HPへ] [ASP系HPへ] [愚痴系HPへ]

<Access97 Pictureプロパティ>

サンプル→0210.LZH 76KB をダウンロードして、見てください。
Access97 pictest.mdb が入っています

内容
--------------------------------
過去の質問整理の中にもあった、
Accessで画像関係の処理です。

*Accessでの画像関係、、みんな興味あるみたいですね。。
------------------------------------------------------
 >お知恵を借りたいのですが、AC
 >CESSで画像付き社員リストを
 >作りたいのですが、
 >サンプルファイル(Image.
 >jpg)のような帳票を作るには
 >どうすれば良いでしょうか?
 >このイメージにこだわることはな
 >いのですが、
------------------------------------------------------

*実行サンプルをダウンロードして、見てください。

作成の方向は、
Pictureプロパティを使用して、画像を埋め込まないで処理します。

テキストボックス、画像ファイル名
が変更されたら、
Me![図].Picture プロパティに図のファイル名をセットします。

'-------------------------
Private Sub 画像ファイル名_AfterUpdate()
    
    '入力データ無しのときは、処理しない
    If Len(Me![画像ファイル名] & "") = 0 Then
        Me![図].Picture = ""
        Exit Sub
    End If

    'ファイル存在チェック
    If Len(Dir(GetDBPath() & Me![画像ファイル名])) = 0 Then
        MsgBox GetDBPath() & Me![画像ファイル名] & "ファイルが見つかりません、
確認してください"
        Exit Sub  '途中で抜けます
    End If
    
    '画像のセット
    Me![図].Picture = GetDBPath() & Me![画像ファイル名]

End Sub
'--------------------------------

ポイントは、Me![図].Picture = ファイル名で、画像が表示できます。

エラーチェックとしては、
dir関数を使用し、ファイルの存在だけ軽くチェックしています。

また、今は、カレントデータベースと同じ位置の画像を読み込むようにしています。
(CD−Rに焼いた画像などには、まだ、対応してません、、
  ドライブを+するなど、工夫をして下さい。)

下記、起動mdbの場所を知る関数です。
'-------------------------------------
'
'カレントMDBの起動場所を返す
Public Function GetDBPath()

    Dim strName As String
    Dim strPath As String

    ' このシステムの名前を取得 (c:\aaa\bbb\ccc\ddd.mdb)
    strName = CurrentDb.Name
    ' パスを取得 (後ろのXXX.MDBを取り除く)
    strPath = Left(strName, InStrRev(strName, "\"))

    'リターン値をセット
    GetDBPath = strPath

End Function

'
' 文字列str1から文字列str2を文字列の後ろから探す。
Public Function InStrRev(str1 As String, str2 As String) As Integer
    
    Dim nPos As Integer
    
    nPos = Len(str2) - 1

    Do While Len(str1) > nPos
        If str2 = Mid(str1, Len(str1) - nPos, Len(str2)) Then
            Exit Do
        End If
        nPos = nPos + 1
    Loop
    InStrRev = Len(str1) - nPos

End Function
'-------------------------------------


今回も、役立つ回答になってませんが、 がんばってください。 *いつものことだが、わかりにくい、、、、 自分へ一言、、  プロらしいテクニックないの?、、、(ないんですよ、、) やっぱ、三流だなぁ、、と声が聞こえてきたところで、このへんで、、 今日も途中で逃げ出す、、、悪人 Ken3 でした。。。


質問や要望、クレームを送る(三流君に連絡する 連絡方法)

質問や要望など連絡方法でお互い確認が取りやすく、便利なのが掲示板なのですが、私の対応のまずさから不定期で荒れてしまい、掲示板は現在封鎖中です。(反省しなきゃ)
感想や質問・要望・苦情など 三流君へメッセージを送る。
時間的余裕のある要望・質問・苦情の場合は、下記のフォームからメッセージを送ることができます。
あなたのお名前(ニックネーム):さん
返信は?: 不用(HP更新を待つ) , E-mail→ アドレス:に返事をもらいたい

(感想や質問・要望・苦情はHPで記事に載せることがあります。)

急ぎで連絡がほしい、そんな時は:[三流君連絡先]に連絡してください。

番外編 愚痴系で書いてた今日の一品 (短いサブ関数など)

2000/05/13 SQL Count関数を使ってみる
2000/05/11 Access97 標準関数Midなどが使えない
2000/05/09 SendObjectのエンコード
2000/05/08 クエリーで〜以外とは
2000/04/27 Imagingコントロールを使ってみた
2000/04/25 Excel97 VBA イベントなど
2000/04/24 Access97で複数のプリンタを切替えて使用
2000/04/20 書式付きエクスポート DoCmd.OutputToで、できます
2000/04/19 Access97でExcel形式へExport時に書式設定を行いたい
2000/04/13 Access97でOutlook97/98とリンクする方法
2000/04/13 VBA Nameステートメント
2000/04/04 Accessでキー取得
2000/04/04 AccessでFile参照ダイアログ?
2000/04/03 縦書用数値変換改良
2000/04/01 Access Err テーブルを消したい
2000/03/31 縦書き数値、どうしてますか?
2000/03/29 VBA 手抜きで、処理後、explorerを開く
2000/03/28 Access --> Word へデータ
2000/03/24 名前一覧Excelの機能で、同じことできました
2000/03/23 Excel97 VBA セルに付けた名前一覧を作成する
2000/03/21 Excel セルに名前付け
2000/02/25 iniFileを読む GetPrivateProfileString
2000/02/15 Excel VBA Rangeオブジェクトとサンプル
2000/02/14 Access97 SizeMode/OLEサイズ で画像調整
2000/02/10 Access97 Pictureプロパティとサンプル
2000/02/09 Access97 集計クエリーで重複値をハジク
2000/02/07 Access97 サブフォームへ値をセット
2000/02/04 Access97 コントロールソース、チョットした使用法
2000/02/01 Access97 フォームフッター
2000/01/18 Access97 now()関数で有効期限処理、、、

←パソコンの技術系の書籍を探しているなら コンピュータ関連の出版社33社(アスキー、インプレス等)が共同運営するコンピュータの本・専門店 種類が豊富で探し易い※在庫ありが48時間以内発送


[三流君(TOP)]へ戻る。