VBからWordやExcelのファイルを開くには?

解決


HID  2001-04-23 22:50:08  No: 74196  IP: [192.*.*.*]

今、ファイルリストで選択された任意のファイルを開く機能を、
プログラムに組み込もうと思っているのですが、
WordやExcel(その他のアプリケーション含む)で保存したファイルを
VBから開く(拡張子に関連付けられているプログラムで)ことは出来るでしょうか?

編集    削除
ogawa  2001-04-23 23:49:28  No: 74197  IP: [192.*.*.*]

Microsoftのホームページに
ファイルの関連付けを元にプログラムを実行させる方法が出ています。
http://www.microsoft.com/JAPAN/support/kb/articles/J020/9/32.htm

編集    削除
ZORO  URL  2001-04-24 00:35:51  No: 74198  IP: [192.*.*.*]

以下はxxxxx.htmを関連づけられているプログラム(IE)で開いています。参考になるでしょうか?

    'ブラウザでhtmを表示
    Dim r&
    
    'URLを実行する
    r = ShellExecute(GetDesktopWindow, "open", "xxxxx.htm", vbNullString, "", SW_SHOW)
    
    Select Case r
    Case SE_ERR_ASSOCINCOMPLETE
        MsgBox "ファイル名の関連付けが不完全、 または無効です。", vbInformation
    Case SE_ERR_NOASSOC
        MsgBox "指定されたファイル名拡張子には、 アプリケーションが関連付けられていません。", vbInformation
    Case 0
        MsgBox "システムリソースが不足しています。", vbInformation
    Case ERROR_FILE_NOT_FOUND
        MsgBox "HTMLファイルが見つかりません。", vbInformation
    Case ERROR_PATH_NOT_FOUND
        MsgBox "パスが見つかりません。", vbInformation
    Case ERROR_BAD_FORMAT
        MsgBox "ブラウザが起動できませんでした。", vbInformation
    End Select

編集    削除
HID  2001-04-24 01:25:27  No: 74199  IP: [192.*.*.*]

ogawaさん、ZOROさんありがとうございました。
ShellExecuteでうまくいきました。
MSDNにも載ってたんですね、
なかなか検索では目当てのHELPが引っかからないものですね。

APIの本が手元に無いのでよくわからないのですが、
HELPでは第2引数がNullで、実際動かしたプログラムも
Nullにして動いてます。
ファイルの関連付けをするダイアログの"アクション"に
関係してるんでしょうか?
この"アクション"の意味もわからないんですが、
Nullでもよいのでしょうか?

編集    削除
HID  2001-04-25 01:52:50  No: 74200  IP: [192.*.*.*]

やっぱりAPIの本を買って調べたほうがいいかもしれないですね。
ありがとうございました。

編集    削除