作成日 2006/11/19
最終更新日 2007/1/1

フォルダやファイルを選択した状態でフォルダウィンドウを開く

 あるフォルダに複数のファイルを保存するマクロやアドインを作ったとします。
 その後、そのフォルダに保存したファイルを選択した状態でフォルダを開く事が出来れば、
ユーザが確認したりするのが楽になると思います。

 というわけで、ここでは、フォルダやファイルを選択した状態でフォルダウィンドウを開く方法を簡単に説明します。(※1、※2、※3、※4)

※2007/1/1に間違いが見つかりました。申し訳ございません。修正しました。マクロもバージョンアップしました(バグ修正です)。

※1:選択するフォルダorファイルは1つとします。
実は、Macの場合は複数の場合も簡単にできるのですが、Windowsの場合はわかりませんでした。
※2:開こうとしたフォルダがなかった場合や、エラー処理についてはここではあまり説明しません。
(理解しにくくなるし、長くなるから書きたくない。)
でも、ダウンロードファイルには開くフォルダの存在チェックと選択状態にするフォルダやファイルの存在チェックもしてあります。(実際に使うときは必要だから。)
※3:Macの場合、AppleScriptを使います。でも、だるまはAppleScriptに関しては右も左も判らない超初心者です。注意しましょう。
※4:当然、ここで紹介する以外の方法もあると思います。判っていると思うけど、念のため。

1.考え方(Macの場合)
2.考え方(Windowsの場合)
3.ダウンロードして使ってみたい
4.関連リンク

1.考え方(Macの場合)

 説明するのが面倒くさいので、ここでは簡単にしか説明しません。

 とりあえず、標準モジュールに
Public Sub OpenFolderWindowAndSelectItem_forMac()
  MacScript("tell application ""Finder""" & vbNewLine _
       & "open folder ""Macintosh HD:""" & vbNewLine _
       & "select {""Macintosh HD:aaa.txt""}" & vbNewLine _
       & "activate" & vbNewLine _
       & "end tell")
End Sub

 と打って実行してみてください。(注意:Macintosh HDの配下に"aaa.txt"というファイルが必要です。)
 それで、赤文字のところを開きたいフォルダの絶対パスに変更、青文字のところを選択したいフォルダorファイル名の絶対パスに変更して、もう一度やってみてください。

このページのトップへ

2.考え方(Windowsの場合)

 説明するのが面倒くさいので、ここでは簡単にしか説明しません。

 とりあえず、標準モジュールに   
Public Sub OpenFolderWindowAndSelectItem_forWindows()
 Shell "Explorer /select,C:\aaa.txt" , 1
End Sub

 と打って実行してみてください。
 それで、赤文字のところを開きたいフォルダの絶対パスに変更、青文字のところを選択したいフォルダorファイル名に変更して、もう一度やってみてください。
このページのトップへ

3.ダウンロードして使ってみたい

 マクロVer1.1(ファイル名: openFolderAndSelectItem.xls)

※1:考え方(Macの場合)考え方(Windowsの場合) では、説明を簡単にするため、フォルダかファイルを選択した状態で フォルダウィンドウを開くだけしか説明しませんでした。
しかし、実際には、開くフォルダや、選択状態にするフォルダやファイルが存在するかどうかをチェックしてから、開くべきです。
このマクロでは、FileSystem.GetAttrメソッドを使用してフォルダや選択状態にするフォルダorファイルが存在するかをチェックしてから、フォルダウィンドウを開きます。
※2:マクロでは、#Ifディレクティブを使用して、MacでもWindowsでも動作するようにしています。


このページのトップへ

4.関連リンク


リンク先の名称
リンク先の説明
リンクした日
Windows エクスプローラのコマンドライン オプション
 Microsoftのページです。
 Windows エクスプローラ(Explorer.exe)のコマンドライン スイッチについて説明があります。
2006/11/19
Mac 版エクセルVBAで、VBAからフォルダウィンドウを開く方法
 Mac版エクセルVBAで、VBAからフォルダウィンドウを開く方法について説明があります。
2006/11/19
Prev Up Next  Top
このページのトップへ

このページの利用によって発生した、いかなる損害について、このホームページの作成者は責任を負いません。
このページの間違いや嘘を見つけた方、このページに書いて欲しい情報がある方はメールをお願いします。

Microsoft 、Windows 、Visual Basic および Excel は米国Microsoft Corporationの米国およびその他の国における登録商標または商標です。
ここではExcel® をエクセル、Visual Basic® for Applications をVBAと表記する場合があります。
Mac 、Mac OS 、Mac OS X 、AppleScript は米国Apple Computer,Inc.の登録商標または商標です。
その他、社名および商品名、システム名称などは、一般に各社の商標または登録商標です。

このホームページの作成者はこれらの会社とはいっさい関係がありません。