VBA:【FSO】フォルダーのディレクトリータイプのチェック「DriveType」(FileSystemObject)
その際にネットワーク越しのフォルダを選択してもらいたくない場合などに利用することができます。
◆ディレクトリーのチェック
以下を実行すると、「SelectPath」で指定したフォルダーがどのドライブにあるかチェックができます。この場合はローカルを選択しているので、「2」が返り、「ローカルドライブ」と表示されます。
フォルダーを選択するダイアログと「Do …Loop」を組み合わせることで、ネットワークフォルダーを選択できないようにすることもできます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
Private Sub ディレクトリー確認_Click() Dim FSO As Object Dim SelectPath As String Dim dirFolder As Object Dim drType As Integer SelectPath = "C:\Users\VBA\FSO\選択したフォルダー" Set FSO = CreateObject("Scripting.FileSystemObject") Set dirFolder = FSO.GetFolder(SelectPath) drType = FSO.GetDrive(dirFolder.Drive).DriveType If drType = 3 Then MsgBox "ネットワークドライブ" ElseIf drType = 2 Then MsgBox "ローカルドライブ" Else MsgBox "その他" End If Set FSO = Nothing End Sub |
◆関連記事