ドライブ情報の取得@Excel マクロ・VBA

ドライブ情報を取得します。
Microsoft Scripting Runtimeを参照設定します。

Scripting.FileSystemObjectを生成します。
drivesにより、全てのドライブ情報を配列を取得できます。
Scripting.driveオブジェクトが配列に格納されています。

For Eachでループして、ドライブ情報を出力します。
IsReadyにて、ドライブが準備されているのかの確認が行えます。

また、Cドライブなどの情報のみ取得したい場合は、
drives("C")で、A~Zの値を渡します。



Sub test()

Dim fileObj As Scripting.FileSystemObject
Dim drives As Scripting.drives
Dim drive As Scripting.drive

'FileSystemObject生成
Set fileObj = New Scripting.FileSystemObject

'Drives取得
Set drives = fileObj.drives

'個別ならば
'Set drive = fileObj.drives("C")

'ドライブ情報取得
For Each drive In drives

    'ドライブ名
    Debug.Print ("ドライブ:" + drive.DriveLetter)

    'タイプ(Scripting.DriveTypeConst)
    Debug.Print (" タイプ:" + CStr(drive.DriveType))

    'ドライブが準備されているか
    If drive.IsReady Then
        Debug.Print (" ファイルシステム:" + drive.fileSystem)
        Debug.Print (" 容量:" + CStr(drive.TotalSize))
        Debug.Print (" 空き容量:" + CStr(drive.FreeSpace))
        Debug.Print (" ユーザが利用できる容量:" + CStr(drive.AvailableSpace))
    End If
Next

Set drive = Nothing
Set drives = Nothing
Set fileObj = Nothing

End Sub




Copyright (C) Excelマクロ・VBAのお勉強. All Rights Reserved.