WindowsAPIを使うことによって、エクスプローラのショートカットメニューの[プロパティ]によって表示されるのと同じ、ファイルの「プロパティダイアログ」を表示させることができます。
まず、標準モジュールのDeclarationsセクションに次のようなコードを記述します。
Private Type SHELLEXECUTEINFO
cbSize As Long
fMask As Long
hWnd As Long
lpVerb As String
lpFile As String
lpParameters As String
lpDirectory As String
nShow As Long
hInstApp As Long
lpIDList As Long
lpClass As String
hkeyClass As Long
dwHotKey As Long
hIcon As Long
hProcess As Long
End Type
Private Const SEE_MASK_INVOKEIDLIST = &HC
Private Const SEE_MASK_NOCLOSEPROCESS = &H40
Private Const SEE_MASK_FLAG_NO_UI = &H400
Private Declare Function ShellExecuteEx Lib "Shell32.dll" _
(lpExecInfo As SHELLEXECUTEINFO) As Long
プロパティダイアログを表示する機能がさまざまなフォーム/モジュールから呼び出されることを前提に、標準モジュールに次のような汎用のプロシージャを作成します。
Public Sub ShowPropDialog(strFileName As String)
'ファイルのプロパティダイアログを開く
Dim udtShExInf As SHELLEXECUTEINFO
With udtShExInf
.cbSize = Len(udtShExInf)
.fMask = SEE_MASK_INVOKEIDLIST Or _
SEE_MASK_NOCLOSEPROCESS Or _
SEE_MASK_FLAG_NO_UI
.hWnd = Application.hWndAccessApp
.lpVerb = "Properties"
.lpFile = strFileName
End With
ShellExecuteEx udtShExInf
End Sub
使用例:
Sub test()
ShowPropDialog "c: \db1.mdb"
End Sub

|