AccessOLE型オブジェクトデータ取得<ADO>について


ado  2003-06-25 01:20:41  No: 78420

こんにちわ。表題の件で質問です。
VB6.0(SP5)
Access2000
Win2000

Accessの列1はデザイナでOLEオブジェクト型に設定し、既存a.xlsファイルを挿入しています。
VBのFormにはOLEコンテナコントロールとCommandボタンを各1つ用意しています。
Commandボタンを押下した時にRecordsetで取得した列1のデータを
VBのOLEにオブジェクトの埋込みを行いたいのですが、
方法がよく分かりません。
ヘルプを見ると、PictureBoxにはLoadPicture()関数で表示できるように思ったのですが、同じようにOLEコンテナにDBから取得したOLEオブジェクト型のデータを
表示させる事は可能でしょうか?(ターゲットはExcelファイルです)
宜しくお願いします。


魔界の仮面弁士  2003-06-25 11:33:31  No: 78421

OLEコンテナにデータバインドさせるのが簡単でしょう。
DataSource/DataFieldプロパティについて調べてみてください。

> PictureBoxにはLoadPicture()関数で表示できるように思ったのですが
LoadPictureは、(メモリ上の)データからではなく、ファイルからの
読み込みになりますよね。それと同じようなイメージでかまわないなら、
OLEコントロールの場合は、SaveToFileメソッドでファイル保存、
ReadFromFileメソッドでファイルからの読み込みが行えます。

なお、OLEオブジェクトデータというのは、元データのバイナリ情報とは
異なるものである事に気を付けてください。例えば、BMP画像やXLSファイルを
OLEオブジェクトとしてOLEオブジェクト型フィールドに保存しておき、
それをRecordset経由でGetChunkしてバイナリファイルとして取得しても、
それは、元の*.bmpや*.xlsとは必ずしも(*)一致しない事になります。

--
(*) OLEオブジェクト型フィールドに、『OLEオブジェクト』としてではなく、
  元ファイルのバイナリイメージ自体をそのまま格納してあるのならば、
  取得後のバイナリと元データのバイナリは、完全に一致する事になります。


ado  2003-06-26 05:13:50  No: 78422

魔界の仮面弁士さん、回答ありがとうございました。
勉強不足のまま質問を投げてしまい申し訳ないです。
DataSource/DataFieldプロパティについて、調べてみます!!


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加