Excel-VBA folderとかshellとか2

こんど・・・

Function IsOpenDirCK(SDir, typ)
Dim Stype, flg
flg = 0
Select Case typ
Case 3: Stype = "IShellFolderViewDual3"
Case 9: Stype = "HTMLDocument"
End Select

Dim objShell As Object, objWindow As Object
'シェルのオブジェクトを作成する
Set objShell = CreateObject("Shell.Application")

For Each objWindow In objShell.Windows
If TypeName(objWindow.document) = Stype Then
'フォルダの場合調べる
Dim Lname
        '調べるフォルダ名パスの文字を \ にしてたら置換つかう。
'Lname = Replace(Mid(objWindow.locationurl, 9, Len(objWindow.locationurl) - 8), "/", "\")
        'LOCATIONURLを フォルダパス的に見る(file:///がついてるので)。
Lname = Mid(objWindow.locationurl, 9, Len(objWindow.locationurl) - 8)
If Lname = SDir Then
objWindow.Quit
End If
flg = 1
End If
Next

If flg = 1 Then Shell "C:\Windows\Explorer.exe " & SDir, vbNormalFocus

End Function


ま、、、いっか。
探してるのがあったら閉じるじゃなくて、Activeにするだけで新しく開かないって方をつくりたかったんだが、
objWindow のプロパティと
Windows Shell 調べるのと違うし、、、
IE-Openは別func作ってるから、どーすっかなー。

時間と空間がない。



前の文



ブログ気持玉

クリックして気持ちを伝えよう!

ログインしてクリックすれば、自分のブログへのリンクが付きます。

→ログインへ

なるほど(納得、参考になった、ヘー)
驚いた
面白い
ナイス
ガッツ(がんばれ!)
かわいい

気持玉数 : 0

この記事へのコメント

この記事へのトラックバック