CopyFolder 方法

将文件夹从一个位置递归复制到另一个位置。

语法

对象CopyFoldersourcedestination, [ overwrite ]

CopyFolder 方法语法包含以下部分:

Part 说明
object 必填。 始终是 FileSystemObject 的名称。
必填。 要复制的一个或多个文件夹的字符串文件夹规范(可包含通配符)。
目的地 必填。 要从其复制文件夹和子文件夹的 source 的字符串目标。 不允许使用通配符。
覆盖 可选。 指示是否覆盖现有文件夹的 Boolean 值。 如果为 True,则覆盖文件;如果为 False,则不覆盖。 默认为 True

备注

通配符只能在 source 参数的最后路径组件中使用。 例如,可以使用:

FileSystemObject.CopyFolder "c:\mydocuments\letters\*", "c:\tempfolder\"

但不能使用:

FileSystemObject.CopyFolder "c:\mydocuments\*\*", "c:\tempfolder\"

如果 包含通配符,或 目标 以路径分隔符 () 结尾,则假定 目标 是复制匹配文件夹和子文件夹的现有文件夹。 否则,假设 destination 为要创建文件夹的名称。 在任一情况下,复制单个文件夹时都可能发生以下四种情况:

  • 如果 destination 不存在,则复制 source 文件夹及其所有内容。 这是通常情况。

  • 如果 destination 是现有文件,则发生错误。

  • 如果 destination 是目录,则尝试复制文件夹及其所有内容。 如果 中包含的文件已存在于 目标中,则 如果覆盖False,则会发生错误。 否则,它将尝试通过现有文件复制文件。

  • 如果 destination 为只读目录并且 overwriteFalse 时,则尝试将现有只读文件复制到该目录将发生错误。

如果使用通配符的 source 不与任何文件夹匹配,也将发生错误。

CopyFolder 方法在遇到第一个错误时即停止。 不会尝试回滚到错误发生前进行的更改。

另请参阅

支持和反馈

有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。