MoveFolder メソッド

フォルダ (複数可) を別の場所へ移動します。

object.MoveFolder ( source, destination ); 

引数

  • object
    必ず指定します。FileSystemObject オブジェクトの名前を指定します。
  • source
    必ず指定します。移動するフォルダのパスを指定します。パスの最後の構成要素内ではワイルドカード文字を使用できます。
  • destination
    必ず指定します。フォルダの移動先のパスを指定します。ワイルドカード文字は使用できません。

解説

引数 source にワイルドカード文字を使用したとき、および引数 destination がパスの区切り文字 (\) で終わるとき、引数 destination には既存フォルダを指定したと判断され、条件に一致するファイルがそのフォルダ内へ移動されます。それ以外のときは、引数 destination に作成するフォルダの名前を指定したと判断されます。いずれの場合でも、移動される各フォルダで発生する処理の実行は 3 種類あります。

  • 引数 destination に指定したフォルダが存在しない場合、フォルダが移動します。これが通常の場合です。
  • 引数 destination に指定したファイルが存在する場合、エラーが発生します。
  • 引数 destination がディレクトリの場合、エラーが発生します。

引数 source でワイルドカード文字を使用した指定がどのフォルダとも一致しなかった場合も、エラーが発生します。MoveFolder メソッドは、最初のエラーが発生した時点で処理を中止します。エラーが発生するまでに行った処理を取り消したり元に戻したりする処理は一切行われません。

重要 このメソッドを使用してボリューム間でフォルダを移動できるのは、オペレーティング システムでボリューム間のフォルダ移動がサポートされている場合だけです。

次のコードは、MoveFolder メソッドの使用例です。

function MoveFldr2Desktop(fldrspec)
{
   var fso;
   fso = new ActiveXObject("Scripting.FileSystemObject");
   fso.MoveFolder(fldrspec, "c:\\windows\\desktop\\");
}
[VBScript]
Sub MoveAFolder(Drivespec)
   Dim fso
   Set fso = CreateObject("Scripting.FileSystemObject")
   fso.MoveFolder Drivespec, "c:\windows\desktop\"
End Sub

参照

CopyFile メソッド | DeleteFile メソッド | GetFile メソッド | GetFileName メソッド | Move メソッド | MoveFile メソッド | OpenTextFile メソッド

対象: FileSystemObject オブジェクト