| 
    
     |  | はじめまして,wsfファイルという存在を知り,初めて利用してみました。 さっそく,質問があります。
 abc.wsfの実行方法についてです。ダブルクリックするときちんと実行されます。このabc.wsfをエクセルのVBAから実行する方法を今模索中です。いろいろネットで調べて試したのですが実行されませんでした。その例を紹介します。おかしな点があれば遠慮なくご指南ください。
 OSは,windowsXP,windowsME,windows98SEを使っています。
 実行例その1:runwsf.xls内のモジュール1
 ////////////////////////////////////////////////
 Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
 (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
 ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd_ As Long) As Long
 
 
 Sub Run_Wsf()
 On Error GoTo errline
 
 ShellExecute 0, "open", "abc.wsf", "", "%WINDIR%\system32\wscript.exe", 1
 
 
 errline:
 Err = 0
 
 End Sub
 
 実行例その2:runwsf.xls内のモジュール2
 ////////////////////////
 Sub Run_Wshell()
 Dim WSHShell
 Dim wsfPath As String
 
 wsfPath = ThisWorkbook.Path & "\abc.wsf"
 
 Set WSHShell = CreateObject("WScript.Shell")
 
 WSHShell.Run wsfPath
 MsgBox "abc.wsfを起動しました。"
 
 End Sub
 
 '一応”abc.wsfを起動しました。”というメッセージは表示されますが,何も実行されているようには見えません。
 
 実行例その3:runwsf.xls内のモジュール3
 ///////////////////////
 Sub Run_Shell()
 
 Shell "wscript.exe g:\temp\abc.wsf"
 
 End Sub
 /////////////////////////////////////
 以上3つほど試してみましたが,きちんと実行されませんでした。
 ぜひ,アドバイスをお待ちしております。
 
 |  |