現在、データに関連付けられた画像のパスを保存し、VBA を使用して画像フレームに表示するようにデータベースをセットアップしています。うまく機能しますが、画像を追加するプロセスは少し面倒であり、ユーザーはそれを正しく使用するのに苦労しています (間違ったパスを入力する、拡張子を含めるのを忘れるなど)。これにより、データベース内に大量の不要なエントリが作成されます。このプロセスを簡素化したいと思います。理想的には、「画像を追加」をクリックすると、Windows エクスプローラーが開き、ユーザーに目的の画像を選択してもらい、その画像のパスを取得して、テーブルに挿入したいと考えています。繰り返しますが、私は OLE を使用しておらず、パス用のテキスト フィールドのみを使用しています。これは可能ですか?
質問する
7515 次
1 に答える
2
Remou が参照したように、FileDialog オブジェクトを使用してこれを実現できます。多くの人にとって、MS Office オブジェクト ライブラリへの参照を追加する必要があるかもしれません (Access ライブラリでは不十分です)。エクスプローラーで選択したファイルからパス名を収集するために使用したコードは次のとおりです。
Public Sub ShowFileDialog()
Dim dlgOpen As FileDialog
Set dlgOpen = Application.FileDialog(msoFileDialogOpen)
With dlgOpen
.AllowMultiSelect = False
.InitialFileName = "Z:\" 'Initial Path when explorer is opened
.Show
If .SelectedItems.Count = 0 Then
MsgBox ("No file Selected") 'No file selected
Else
Me.txtPath = .SelectedItems(1) 'sets textbox on the form to the path selected
End If
End With
End Sub
于 2012-07-09T17:21:39.313 に答える