即効テクニック |
●概要● Accessのデータベースには、文字や数値の他にも、画像のようなバイナリデータも保存することができます。 以下のコードは、ADOのAppendChunkメソッドを使用してOLEオブジェクト型フィールドに画像を格納するサンプルです。 ●サンプルプログラム● Sub InsertImage() Dim objRecordSet As Recordset ' レコードセット Dim bytImage() As Byte ' 画像バイナリデータ Dim nFileNo As Integer ' ファイル番号 ' 格納するイメージデータを取得する nFileNo = FreeFile Open "c:\winnt\珈琲カップ.bmp" For Binary As nFileNo ReDim bytImage(LOF(1) - 1) Get nFileNo, , bytImage() Close nFileNo ' レコードセットをオープンする Set objRecordSet = CurrentDb.OpenRecordset("イメージ") ' レコードを追加する objRecordSet.AddNew objRecordSet.Fields("IMAGE").AppendChunk bytImage() objRecordSet.Update ' レコードセットを閉じる objRecordSet.Close Set objRecordSet = Nothing End Sub ●注意● OLEオブジェクト型を使って画像を保存した場合、通常の画像フォーマットではなくOLE形式になることに注意して下さい。