'Eドライブの使用可能状態を取得 Debug.Print bhFSO.GetDrive("E").IsReady
「IsReady」プロパティは、ドライブが使用可能な状態にあるかを調べるプロパティです
使用可能であれば「True」、使用不可であれば「False」が指定されます
これはUSBメモリーなどの着脱を行うドライブに対して、データのやり取りが可能な状態かを調べるのに使用します
そのため、これはドライブオブジェクトのプロパティになりますので、まずGetDriveメソッドを使用してドライブを取得します
その後、そのドライブオブジェクトのIsReadyプロパティを調べます
例コードでは1行で実行していますが、他にもドライブに対して処理を行うのであれば、GetDriveメソッドでオブジェクト変数に代入させるほうが良いです
ただ、使用状態を知りたいだけならこのコードで十分です
使用可能な状態とは、ドライブが接続されてデータの通信が可能になった状態です
ドライブを取り外す場合に、基本的には「取り外し」という操作を行います
この操作を行った段階ではまだ、物理的には取り外していません
なので、DriveExistsメソッドではTrueが返される状態です
ですがデータのやり取りは出来ない状態なので、IsReadyプロパティはFalseになります
物理的に取り外すと、DriveExistsメソッドでもFalseが返されるようになります
ドライブが存在しないときは、このプロパティを取得しようとするとエラーが発生します
つまり、DriveExistsメソッドとIsReadyプロパティの2つともがTrueを返したときにそのドライブとのデータのやり取りが可能になる、ということです