CopyFile メソッド
1 つ以上のファイルを別の場所にコピーします。
構文
オブジェクト。CopyFileソース、 コピー先、[ overwrite ]
CopyFile メソッドの構文は、次の指定項目で構成されています。
指定項目 | 説明 |
---|---|
object | 必須です。 object は、常に FileSystemObject の名前です。 |
source | 必須です。 コピーする 1 つ以上のファイルを示す、ファイル指定用文字列。ワイルドカード文字も使用できます。 |
destination | 必須です。 source から 1 つ以上のファイルをコピーする先を指定する文字列。 ワイルドカード文字は使用できません。 |
overwrite | 省略可能。 既存のファイルを上書きできるかどうかを示すブール値です。 True の場合はファイルが上書きされ、False の場合は上書きされません。 既定値は True です。 destination に読み取り専用属性が設定されている場合は、overwrite の値にかかわらず CopyFile は失敗します。 |
解説
ワイルドカード文字を使用できるのは、 source 引数の最後のパス コンポーネントだけです。 たとえば、以下を使用できます。
FileSystemObject.CopyFile "c:\mydocuments\letters\*.doc", "c:\tempfolder\"
次のように使用することはできません。
FileSystemObject.CopyFile "c:\mydocuments\*\R1???97.xls", "c:\tempfolder"
source にワイルドカード文字が含まれている場合、または宛先がパス区切り記号 (****) で終わる場合、コピー先は一致するファイルをコピーする既存のフォルダーであると見なされます。 それ以外の場合は、destination は作成するファイルの名前と見なされます。 いずれの場合も、個々のファイルのコピー時に起こり得ることは 3 つあります。
destination が存在しない場合は、source がコピーされます。 これは通常のケースです。
destination が既存のファイルの場合、 overwrite が False のときはエラーが発生します。 True のときは既存のファイルを上書きして source がコピーされます。
destination がディレクトリの場合は、エラーが発生します。
source でワイルドカード文字が使用されていて、どのファイルとも一致しなかった場合も、エラーが発生します。 いずれかのエラーが発生した時点で CopyFile メソッドの実行は停止されます。 エラーが発生する前に行われた変更内容のロールバックまたは取り消しは行われません。
新しい宛先パスにコピーされたファイルは、同じファイル名を保持します。 コピーしたファイルの名前を変更するには、コピー先のパスに新しいファイル名を含めるだけです。 たとえば、これによりファイルが新しい場所にコピー され、 新しい場所のファイルに別の名前が付けられます。
FileSystemObject.CopyFile "c:\mydocuments\letters\sample.doc", "c:\tempfolder\sample_new.doc"
関連項目
サポートとフィードバック
Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。