| 
    
     |  | ▼にー さん: こんにちは。
 
 >いつも勉強させて頂いております。
 >今回はフォルダを開く操作で質問があります。
 >
 >上司からマクロの作成を依頼され、おまけとして
 >ネットワーク上の共有フォルダを呼び出す機能をユーザーフォームに
 >組み込もうとしました。
 >フォルダを開くソースは過去ログから頂きました。
 >
 >私の環境(WinXP+Excel2002)では以下のコードを利用して
 >希望のフォルダを開くことが出来るのですが
 >WinXP+Excel2003の環境で動作させるとエラーが出てしまいます。
 Excel2003は、持ってないので確認できませんが、
 私もExcel2000、2002で確認したところ
 異常はありませんでした。
 
 
 >エラーの内容は
 >実行時エラー '-2147024843(80070035)':
 >'Run'メソッドは失敗しました 'IWshShell3'オブジェクト
 >
 >ソースは
 >Sub フォルダオープン(変数1 As String, 変数2 As String)
 >'
 >  Dim objShell As Object, objFolder As Object
 >  Dim FSO As Object, WshShell As Object
 >  Dim FolN As String, SPath As String
 >
 >  Set objShell = CreateObject("Shell.Application")
 >  FolN = "\\ネットワーク共有フォルダ\○○\" & 変数1 & "\" & 変数2
 >  Set FSO = CreateObject("Scripting.FileSystemObject")
 >  Set WshShell = CreateObject("WScript.Shell")
 >  SPath = FSO.GetFolder(FolN).ShortPath
 WshShell.Run FolN, 3, False
 '         ↑ここにFolNを直接してしたらどうなりますか?
 '          駄目もとで試してみて下さい
 >  Set FSO = Nothing: Set WshShell = Nothing
 >  Set objFolder = Nothing: Set objShell = Nothing
 >End Sub
 >
 >ユーザーフォームから変数1、変数2を設定してパスを変化させています。
 >過去ログや目安箱を見てみたのですが理解できませんでした。
 
 他にも
 http://www.vbalab.net/vbaqa/c-board.cgi?cmd=ntr;tree=17527;id=excel
 
 このあたりのコードをリンク先ではファイル名を指定していますが、
 フォルダ名でも可能なので変更して試してみて下さい。
 
 |  |