ms-accessを取得して外部ファイルから画像を表示する方法はありますか
質問
いくつかの資産の写真をその仕様とともに表示する必要がある MS-Access アプリ (1/10 MS-Access、9/10 MS-SQL) を持っています。現在、画像は OLE オブジェクトとして MS-Access テーブルに保存されています (ユーザーはコピーしてフィールドに貼り付けます)。
さまざまな理由により、元の .jpg をネットワーク ドライブ上のフォルダーに保存し、アプリケーション部分から参照したいと考えています。MS-SQL の画像データ型 (およびその代替となる varbinary) への移行を検討しましたが、ユーザー層はネットワーク フォルダーの概念をより簡単に理解できると思います。
MS Access で .jpg の内容を表示するにはどうすればよいですか?
解決
もう 1 つのオプションは、フォームにイメージ コントロールを配置することです。そのコントロール (Picture) には、単に画像へのパスであるプロパティがあります。VBA の使用方法の短い例を次に示します。
TxtPhotoは、画像へのパスImgPictureへのパスを使用して、データベースフィールドにバインドされたテキストボックスであり、画像制御です。例は、次のレコードに進むボタンのクリックイベントです。
Private Sub cmdNextClick()
DoCmd.GoToRecord , , acNext
txtPhoto.SetFocus
imgPicture.Picture = txtPhoto.Text
Exit Sub
End Sub
他のヒント
Stephen Lebans のソリューションを見たことがありますか?ここにその 1 つがあります:
Web ページの左側にある他の優れたコードのリストを確認してください。あなたが必要としているものに完全に一致するものが見つかるかもしれません。
完全な VBA を使用した Microsoft のこの記事は、私にとって非常にうまく機能することがわかりました。
おそらく最も簡単な方法は、フォームの 1 つに Internet Explorer を配置することです。このサイトをチェックしてください: http://www.acky.net/tutorials/vb/wbrowser/
Access でそのオブジェクトを参照できるため、ウェブブラウザ コントロールで .jpg のパス (私の記憶が正しければ NavigateTo()) を指定するだけで済みます。
編集: 上記のリンクは、Google で検索して結果から選択したものです (すぐに開いた最初のリンク)。これはあまり良いチュートリアルとは思えません。必要なヒントがすべて記載されているだけです...msdnなどを確認してください。さらに詳しい情報が必要な場合は!
という ActiveX コントロールを試すことができます。 アクセスイマジン, を使用すると、データベースへの画像の追加がより便利になります。ファイルからロードしたり、スキャンしたり、バッファから貼り付けたり、ドラッグ アンド ドロップしたりできます。データベース内で画像をトリミングし、自動的にリサンプリングすることができます。必要に応じて、外部画像ストレージを自動的に処理します。
Access 2010 (およびそれ以降) では、Image コントロールを、 パス 画像ファイル (.jpg、.png、...) に変換します。VBA は必要ありません。
詳細については、私の他の回答を参照してください ここ.