Top > VBScript > フォルダ選択ダイアログ


BrowseForFolder( lngHwnd , strTitle , lngOptions [, vRootFolder ])

lngHWND : 0でOKのようです...他の定数を指定しても動作しなかった
strTitle : 説明文
lngOptions : &h10を選択したフォルダ名を表示できます
vRootFolder : [ 省略可能 ] ダイアログのタイプを指定


ShellSpecialFolderConstants
説明
Const ssfDESKTOP = 0 デスクトップ(仮想)
1 Internet Explorer
Const ssfPROGRAMS = 2 プログラム
Const ssfCONTROLS = 3 コントロールパネル
Const ssfPRINTERS = 4 プリンタ
Const ssfPERSONAL = 5 マイドキュメント
Const ssfFAVORITES = 6 お気に入り
Const ssfSTARTUP = 7 スタートアップ
Const ssfRECENT = 8 最近使ったファイル
Const ssfSENDTO = 9 送る
Const ssfBITBUCKET = 10 ごみ箱
Const ssfSTARTMENU = 11 スタートメニュー
Const ssfDESKTOPDIRECTORY = 16 デスクトップ(フォルダ)
Const ssfDRIVES = 17 マイコンピュータ
Const ssfNETWORK = 18 ネットワークコンピュータ
Const ssfNETHOOD = 19 NetHood
Const ssfFONTS = 20 フォント
Const ssfTEMPLATES = 21 テンプレート

BrowseInfo
説明
Const BIF_RETURNONLYFSDIRS = &H1 ファイルシステムのフォルダ(仮想フォルダ以外)のみが選択できる。
Const BIF_DONTGOBELOWDOMAIN = &H2 ドメイン下のネットワークフォルダを含めない。
Const BIF_STATUSTEXT = &H4 ステータスバーを表示。WSHからは意味なし(サイズがちょっと変わる?)。
Const BIF_RETURNFSANCESTORS = &H8 選択不可になる?
Const BIF_EDITBOX = &H10 フォルダ名を指定する、テキストボックスも表示。
Const BIF_VALIDATE = &H20 ?
Const BIF_BROWSEFORCOMPUTER = &H1000 コンピュータの検索。ssfNETWORKと併用。
Const BIF_BROWSEFORPRINTER = &H2000 プリンタの検索。ssfPRINTERS と併用。
Const BIF_BROWSEINCLUDEFILES = &H4000 ファイルも選択できるようになる。

Option Explicit

Dim objShell
Dim objShellFolder
Dim strPath

Set objShell = WScript.CreateObject("Shell.Application")
Set objShellFolder = objShell.BrowseForFolder( 0 , "フォルダを選択して下さい" , &h10 )

If (objShellFolder Is Nothing) Then
    WScript.Quit
End If
strPath = objShellFolder.Items.Item.Path

WScript.Echo strPath

フォルダ選択のダイアログのサンプルです。

ファイル選択とフォルダ選択は何かと使えますね。


VBscriptでも強い味方です。正規表現。

呪文のような文章で超強力な威力を発する正規表現!本サイト正規表現のページはこちら!



Copyright © 2015 AchaPorutePiipo All Rights Reserved.