Поделиться через


Метод CopyFolder

Рекурсивно копирует папку из одного места в другое.

Синтаксис

object. Источник CopyFolder, назначение, [ перезапись ]

Синтаксис метода CopyFolder состоит из следующих частей:

Part Описание
object Обязательно. Всегда имя объекта FileSystemObject.
источник Обязательно. Строка знаков, представляющая спецификацию папки, которая может содержать подстановочные знаки для одной или нескольких копируемых папок.
destination Обязательно. Строка знаков, определяющая место назначения, в которое должны быть скопированы папка и вложенные папки из source. Использование подстановочных знаков запрещено.
перезаписать Необязательный параметр. Значение типа Boolean, показывающее, можно ли перезаписывать существующие папки. При значении True файлы перезаписываются, при значении False перезапись файлов не происходит. По умолчанию используется значение True.

Замечания

Подстановочные знаки могут использоваться только в последнем компоненте пути аргумента source. Например, можно использовать:

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

Однако нельзя использовать:

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

Если источник содержит подстановочные знаки или назначение заканчивается разделителем пути (\), предполагается, что назначение — это существующая папка, в которую копируются соответствующие папки и вложенные папки. В противном случае предполагается, что destination — это имя создаваемой папки. В любом случае при копировании отдельной папки могут произойти четыре вещи:

  • Если папка destination не существует, выполняется копирование папки source и всего ее содержимого. Это обычный случай.

  • Если destination является существующим файлом, происходит ошибка.

  • Если destination является каталогом, выполняется попытка скопировать папку и все ее содержимое. Если файл, содержащийся в source, уже существует в destination, возникает ошибка, если значение overwrite равно False. В противном случае будет выполнена попытка скопировать файл поверх существующего файла.

  • Если destination является каталогом только для чтения и значение overwrite равно False, при попытке скопировать в этот каталог существующий файл только для чтения возникает ошибка.

Ошибка также возникает, если значение source, заданное с использованием подстановочных знаков, не соответствует никаким папкам.

Метод CopyFolder останавливается при первой обнаруженной ошибке. Попытка отката изменений, выполненных до появления ошибки, не выполняется.

См. также

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.