CopyFile 方法
将一个或多个文件从一个位置复制到另一个位置。
语法
对象。CopyFilesource, destination, [ overwrite ]
CopyFile 方法的语法包含以下三部分:
Part | 说明 |
---|---|
object | 必填。 对象始终是 FileSystemObject 的名称。 |
源 | 必填。 字符串文件规范,可以包括通配符来代表要复制的一个或多个文件。 |
目的地 | 必填。 要将 source 中的文件复制到的字符串目标。 不能使用通配符。 |
改写 | 可选。 布尔值,指示是否覆盖现有文件。 如果为 True,则覆盖文件,如果为 False,则不覆盖文件。 默认为 True。 请注意,如果 destination 具有只读属性集,则不管 overwrite 值是什么,CopyFile 都将失败。 |
备注
通配符只能在 source 参数的最后路径组件中使用。 例如,可以使用:
FileSystemObject.CopyFile "c:\mydocuments\letters\*.doc", "c:\tempfolder\"
但不能使用:
FileSystemObject.CopyFile "c:\mydocuments\*\R1???97.xls", "c:\tempfolder"
如果 源 包含通配符,或 目标 以路径分隔符 (****) 结尾,则假定 目标 是复制匹配文件的现有文件夹。 否则,destination 被认为是要创建的文件的名称。 在任一情况下,复制单个文件时都可能发生以下三种情况:
如果 destination 不存在,则复制 source。 这是常见情况。
如果 destination 是现有文件,并且 overwrite 为 False,则会出现错误。 否则,将尝试复制 source 并覆盖现有文件。
如果 destination 是一个目录,则会出现错误。
如果使用通配符的 source 与任何文件不匹配,也会出现错误。 CopyFile 方法将在所遇到的第一个错误处停止。 在发生错误之前,不会尝试回滚或撤消任何已进行的更改。
复制到新目标路径的文件将保留相同的文件名。 若要重命名复制的文件,只需在目标路径中包含新文件名即可。 例如,这会将文件复制到新位置 , 新位置中的文件将具有不同的名称:
FileSystemObject.CopyFile "c:\mydocuments\letters\sample.doc", "c:\tempfolder\sample_new.doc"
另请参阅
支持和反馈
有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。