
こちらの過去のQ/Aを参考にして作成してみましたが、表題の方法が
よくわかりません。
わたしが行ったのは・・・、
・表示したいファイル名のフルパスを持つフィールドをテーブルに持つ。
(テキスト属性)
・フォームにそのフィールドを可視で配置する。
・フォームにイメージコントロールを配置する。
・Form_Loadイベントで、そのフィールドがnullでなければ、イメージ
コントロールのPictureプロパティに、そのフィールドのValueを
セットする。
この方法だと、あらかじめテーブルのフィールドに画像ファイルの
フルパスをセットする必要がありますが、それを「ファイルを開く」
ダイアログボックスで選択し、自動で入力できるようにしたいのです。
何かいい方法はあるでしょうか。
No.1ベストアンサー
- 回答日時:
ACCESSでは「ファイルを開く」ダイアログを利用できません。
そこで、EXCELオブジェクトを宣言して「ファイルを開く」ダイアログを利用します。
注意点1
ダイアログが表示されない?という場合はAlt+Tabで切り替えが必要
注意点2
ファイル名はフルパス+ファイル名なので適宜分解してください。
Dim objXLS As Object
Dim varFileName As Variant
Set objXLS = CreateObject("Excel.Application")
' Excelの [名前を付けて保存] ダイアログを開き、保存ファイル名を取得
varFileName = objXLS.GetOpenFilename("EXCELファイル (*.xls),*.xls")
If varFileName = False Then
MsgBox "取り消しが押された"
Else
'varFileNameにはフルパスとファイル名が格納されている
MsgBox varFileName
End If
'無効化しないとえらいことになる
Set objXLS = Nothing
No.2
- 回答日時:
#1です。
一部追加・訂正します。-追加------------------------------
注意点3
当然ながらACCESS VBAの参照設定でEXCELの指定が必要
-訂正(誤)------------------------------
' Excelの [名前を付けて保存] ダイアログを開き、保存ファイル名を取得
-訂正(以下に訂正)-----------------------
' Excelの [ファイルを開く] ダイアログを開き、対象ファイル名を取得
迅速・丁寧な対応、ありがとうございました。
さっそくやってみたところ、うまくいきました。
やはりACCESSでは無理だったのですね。
わたしになど、EXCELオブジェクトを利用するなど、
考えも及ばなかったです。(^^;)
本当に、ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Access(アクセス) Accessテーブルの結合で別々のテーブルのフィールドを組み合わせて値を出す方法について 2 2022/07/20 19:43
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- その他(データベース) 更新クエリをリンクデータベーステーブルに実行し実行時エラー3362固有インデックスに重複する値が含ま 1 2022/09/21 11:44
- Access(アクセス) Accessフォームで複数条件でフィールドの値を表示する方法 4 2022/07/21 10:47
- Access(アクセス) Accessテキストボックス内に2つのフィールドの値を比較して大きい方の値を表示させる方法 1 2022/09/09 10:50
- Access(アクセス) access,vbaでフォルダ内のファイルをテーブルにインポート、ファイル名もフィールドに追加したい 1 2022/08/31 11:11
- Access(アクセス) アクセスの更新クエリでカレントレコードのみ更新したい 1 2022/06/02 23:32
- Access(アクセス) Accessフォーム 一部のレコードだけを抽出する方法について 1 2022/06/28 18:45
- その他(プログラミング・Web制作) 【GAS】Gmail本文をブラウザ表示された状態でPDFにしたいです 1 2022/12/12 09:54
- Access(アクセス) AccessVBAで降順にするテーブル作成クエリを使用して作成したテーブルを削除し同一のテーブル作成 1 2023/01/06 11:17
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルvbaでdocuworksprinter...
-
ExcelのVBAで上書き保存を確...
-
エクセルVBAで一つ上の階層...
-
Excel 相対パス
-
実行ファイルのパスを取得したい
-
エクセルのマクロで特定フォル...
-
【VB.NET】App.configにファイ...
-
VBA★PDFをPDFアプリで印刷し...
-
VBAでの共有パスにつきまして
-
VBAでパワーシェルを実行したい...
-
xcopyコマンドの進行状況を表示...
-
C++でネットワークパスのファイ...
-
リストボックスにファイル名の...
-
ショートファイルネーム→ロング...
-
C#でのProcess.Startと変数path
-
Excel2010VBAでエラーが出る相...
-
コマンドプロンプトのコピー関...
-
TeraTerm マクロの getdir コマ...
-
【VBA】ExcelマクロでCSVファイ...
-
EXCEL(VBA)で指定フォルダ内の...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルvbaでdocuworksprinter...
-
エクセルVBAで一つ上の階層...
-
xcopyコマンドの進行状況を表示...
-
Excel 相対パス
-
実行ファイルのパスを取得したい
-
コマンドプロンプトのコピー関...
-
【VB.NET】App.configにファイ...
-
エクセルのマクロで特定フォル...
-
VBA★PDFをPDFアプリで印刷し...
-
ExcelVBAの使い方 ¥の使い方...
-
fopenでのパス指定
-
ExcelのVBAで上書き保存を確...
-
EXCEL(VBA)で指定フォルダ内の...
-
C#でのProcess.Startと変数path
-
【VBA】ExcelマクロでCSVファイ...
-
VBAでパワーシェルを実行したい...
-
A列に記載されているフォルダ...
-
初心者powershellのPS1ファイル...
-
Eclipse
-
VBAとロングファイル名
おすすめ情報