Как переместить определенные файлы из одной папки в другую в Excel?
Копирование файлов из одной папки в другую с помощью vba
На эту тему уже было сделано несколько подобных сообщений. Несмотря на это, у меня есть код, который уникален по сравнению со всеми теми, которые я видел до сих пор (при обсуждении этой темы).
Ошибка, которую я получаю, гласит, что файл не может быть найден. В FS я должен найти файл в той же папке, которую я использую в качестве SOURCE. CopyFile.
Поэтому мне нужно исправить эту ошибку, и если возможно, я хотел бы скопировать файл в другую папку и переименовать его. Например, если у меня есть файл «Excel.xls», я хотел бы скопировать его с именем «Excel_old.xls», возможно ли это с помощью приведенного ниже кода, или это слишком сложно, что не стоит делать?
2 ответа
- Копирование файлов из одной папки в другую на C
Всякий раз, когда я хочу передать файлы из одного места в другое, мне нужно сделать резервную копию из папки назначения только тех файлов, которые я хочу передать из исходной папки в папку назначения. Это то, что я хочу сделать, но возможно ли это на чистом компьютере.
Я сейчас ищу код для перемещения файлов excel из одной папки в другую, если есть способ сделать это, кто-нибудь помогите мне. Извините, но я не разбираюсь в коде, так как никогда не использовал VBA и впервые даже не заглядывал в него. Я буду тобой.
Это происходит потому, что fso. CopyFile программы «C:UsersDesktopFilesfile» и «C:UsersDesktopFilesOldfile» не являются файлами. Похоже, что это просто фиктивная файловая строка.
Если вместо этого строка была
fso.CopyFile fil.Path, «C:UsersDesktopFilesOld» & fil.name . это может сработать.
Обновлено с учетом :
Я только что попробовал следующее с (имя пользователя компьютера ниже) и смог перенести все в новую папку:
Единственное различие здесь в том, что я использовал fil. Я использовал ParentFolder для получения рабочего стола, а затем сохранил его в папку, созданную на рабочем столе под названием «test» (перед запуском сценария).
Чтобы переместить все файлы в папке:
Похожие вопросы:
Можно ли скопировать условное форматирование из одной ячейки в другую с помощью VBA? Я могу представить что-то вроде: sheet(A).Range(A1:A10).ConditionalFormatting =.
Иногда я сталкиваюсь с ситуацией, когда мне нужно скопировать все файлы, содержащие определенный шаблон в своем содержимом, из одной папки в другую. Например, папка DirA содержит 100 файлов, включая.
Мне нужно переместить файл из одной папки в другую с помощью VBA. For m = 1 To fnum MsgBox Please Select & m & files ffiles(m) = Application.GetOpenFilename Next m If Dir(outputfolder) = .
Я хочу скопировать некоторые файлы из одной папки в другую, и перед копированием или заменой файлов я хочу создать резервную копию из папки назначения файлов, которые я пытаюсь скопировать.
Я ищу код для перемещения файлов Excel из одной папки в другую, если есть способ сделать это, пожалуйста, помогите. Мне очень жаль, но я не знаю, как это сделать.
Это очень простой вопрос, но он меня беспокоит. Я хочу скопировать все файлы из одной папки в другую с помощью сценария оболочки. Аналогично: #!/bin/sh cp data/* /tmp/data Но я получаю ошибку: zsh:1: нет совпадений.
Было бы идеально, если бы я мог копировать power-запросы из одной книги в другую с помощью VBA. Проделав это вручную, я знаю, как это сделать, но это довольно сложно. Доступ к силовому запросу можно получить через объект.
У меня есть две папки, одна из которых пустая, а другая содержит 5 файлов изображений с именами image1, image2, image3, image4 и image5. Я хочу переместить или скопировать изображение2, изображение4 и изображение5 в.
Я пытаюсь скопировать несколько файлов из одной директории в другую, используя следующий код val pathCorpus = Files.copy( Paths.get(src/main/resources/corpusDirectory/corpus.mallet).
Я использую следующий код для копирования файлов из одной папки в другую, но файлы перезаписываются, возможно ли копировать файлы в новую подпапку для каждой итерации? для пациентов.
Перемещение или копирование файлов в SharePoint
Помимо перемещения или копирования файлов в SharePoint, можно синхронизировать файлы SharePoint с помощью приложения синхронизации OneDrive.
Примечание: Если при попытке перемещения или копирования элементов другие сайты не отображаются в списке, это означает, что ваша организация не позволяет перемещать и копировать элементы между сайтами. Если вы являетесь администратором SharePoint или глобальной организации, чтобы узнать, как включить копирование между сайтами в Центре администрирования SharePoint, см. статью SharePoint.
Выберите свою версию SharePoint на одной из следующих вкладок:
Шаг 1.
Выберите файлы или папки в SharePoint библиотеке.
Шаг 2.
На панели команд выберите (Еще), а затем — Переместить илиКопировать в.
Примечание: Замените текущий опыт на современный, если переключение на или копирование невозможно.
Шаг 3.
На панели Перемещениеили копирование выберите место назначения в текущей библиотеке, OneDrive или другой SharePoint сайте. (SharePoint Server 2019 в настоящее время поддерживает только текущую библиотеку.)
Шаг 4.
На панели Перемещениеили копирование выберите папку в текущей библиотеке и выберите переместить сюда или Копировать сюда. Если вы хотите переместить или скопировать файлы в новую папку, выберите Новая папка, чтобы добавить новую папку. Введите имя папки, выберите его и выберите переместить сюда или скопировать сюда.
При использовании функции Move To история документа будет скопирована в новое место назначения. При использовании команды Копировать в для документов, имеющих историю версий, копируется только самая последняя версия. Чтобы скопировать предыдущие версии, необходимо восстановить и скопировать каждую версию. Дополнительную информацию см. в разделе Включение и настройка версий для списка или библиотеки.
Операция Move to не будет выполнена, если была предпринята попытка переместить документ из одной библиотеки в другую и если в сопоставлении были применены уникальные значения.
При перемещении файла он будет отображаться в исходном каталоге до тех пор, пока не будет полностью перемещен в место назначения, после чего он будет удален. После перемещения файл будет помещен в мусорную корзину исходного сайта, где он будет находиться до тех пор, пока пользователь не восстановит его из корзины.
Рекомендуется не использовать OneNote за пределами приложения OneNote.
Навигация и копирование для более удобной работы с SharePoint Online.
Опция «Переместить в сейчас» недоступна в библиотеке Pages.
Наиболее распространенные сценарии см. в этом блоге сообщества специалистов по технологиям.
Копировать
Выберите элементы, которые хотите скопировать, и нажмите кнопку Копировать. Или выберите пункт Дополнительные > Копировать в.
Примечание: Копировать в недоступно, если используется классический SharePoint.
В поле выбора места назначения выберите местоположение, в которое нужно сохранить копию файлов или папок.
Если вы хотите скопировать файл в папку, выберите Создание папки.
Введите имя для новой папки в текстовое поле.
Выберите на вкладке Копировать здесь.
За один раз возможно копирование до 500 МБ файлов.
В документах, основанных на истории версий, копируется только последняя версия. Если вы хотите скопировать более раннюю версию, необходимо восстановить и скопировать каждую из них. Подробнее об этом можно узнать в теме Включение и настройка версий библиотеки.
Перемещение
Выберите предметы, которые вы хотите переместить.
Чтобы переместиться в другое место, выберите Move To. Если вы не видите MoveIn в главном меню, выберите . (много на) и выберите MoveIn .
Примечание: Если вы используете классический SharePoint, вы не можете перейти в него.
Если вы хотите переместить файлы в другое место в библиотеке документов, выберите новое место назначения и нажмите кнопку Переместить сюда.
Чтобы добавить новую папку в библиотеку документов, можно также нажать кнопку Новая папка в области Выбор места назначения и переместить элемент в новую папку. Вы можете назвать новую папку, выбрать ее, а затем выбрать Переместить сюда.
Вы можете переместить историю документа, выбрав Move To . Дополнительные сведения об этом см. в разделе Включение и настройка версий для списка или библиотеки.
Важно:Office 2010 больше не поддерживается. Перейдите на Microsoft 365, чтобы работать удаленно с любого устройства и при этом получать поддержку.
FileCopy в VBA
Существует множество способов копирования или перемещения файла из одной папки в другую. Копирование и вставка значка файла в папку назначения путем копирования и вырезания значка. Тем не менее, мы можем автоматизировать этот процесс копирования файла с помощью VBA. У нас есть функция Copy File в VBA, которая позволяет нам копировать файлы.
Синтаксис FileCopy в Excel VBA
Копировать файлы с помощью VBA очень просто. Это выглядит как следующий синтаксис.
File Copy имеет только два компонента для подачи. К ним относятся:
- Источник — Здесь вы указываете местоположение источника, из которого вы хотите скопировать файл.
- Destination — Здесь указывается папка назначения, в которую будет вставлен скопированный файл.
Полный синтаксис будет иметь тип String. Поскольку мы используем путь к файлу, который будет иметь текстовый тип.
Как скопировать файл в Excel VBA?
Итак, давайте рассмотрим некоторые примеры копирования файлов VBA в Excel.
Вы можете скачать этот шаблон копирования файла Excel VBA здесь — Шаблон копирования файла Excel VBA
Пример № 1 — FileCopy в VBA
Как вы увидите в первом примере, копирование файлов из их первоначальных местоположений и вставка их в место назначения очень просты.
Для этого вам нужен файл любого типа или расширения. Наш файл Excel имеет расширение xlsx. Вы можете видеть, что мы поместили файл Excel в папку под названием Test, чтобы он был легко доступен.
Вот файл, который мы хотим скопировать в папку назначения с помощью FileCopy.
Для этого перейдите в окно VBA и выберите раскрывающийся список «Модуль из вставки» (см. ниже).
Шаг 2: Теперь, в открытом модуле, введите подкатегорию VBAFileCopy или любое другое название, которое вам нравится.
Код:
Шаг 3: Теперь откройте функцию FileCopy как показано ниже.
Код:
Шаг 4: Теперь возьмите адрес местоположения источника в кавычки, затем имя файла и расширение, как показано ниже
Код:
Шаг 5: Снова поместите путь в кавычки в качестве места назначения, а затем файл и его расширение.
Код:
Шаг 6: Теперь скомпилируйте код и запустите его, нажав на кнопку Play в строке меню. Вы увидите, что файл Excel под названием Test теперь скопирован из исходного местоположения в целевое, как показано ниже. Поскольку в файле ничего не было, размер файла равен 0 КБ.
Пример №2 — FileCopy в VBA
В другом примере мы увидим, как скопировать файл из исходного местоположения в место назначения, определив переменную. Этот процесс немного дольше, но более надежен, поскольку мы будем определять параметры и переменные.
Шаг 1: Сначала откройте новый модуль и напишите подкатегорию VBA File Copy, как показано ниже.
Код:
Шаг 2: Сначала определите переменную, в которую мы поместим местоположение исходного файла того же Excel, который мы использовали в примере 1, как строку.
Код:
Шаг 3: Таким же образом нам понадобится другая переменная для места назначения.
Код:
Шаг 4: Теперь поместите местоположение в первую определенную переменную, которая называется «FirstLocation», вместе с именем и расширением файла.
Код:
В Шаге 5 используйте переменную «SecondLocation», которую мы определили выше, чтобы сделать то же самое для пункта назначения.
Код:
Теперь пришло время скопировать файлы с помощью функции FileCopy (Копирование файлов).
Код:
При использовании синтаксиса FileCopy мы должны сначала указать, где находится исходный файл. Обе переменные требуют наличия исходной и целевой папки, как мы указывали выше.
Шаг 7: Здесь мы можем непосредственно выбрать эти переменные. Сначала выберите переменную местоположения источника, которой является FirstLocation .
Код:
Шаг 8: Снова выберите целевую переменную — SecondLocation, как в примере ниже.
Код:
После этого скомпилируйте код с помощью F8. И если ошибок не обнаружено, запустите код. Здесь мы видим, что исходный файл скопирован в папку назначения и вставлен туда, как показано на рисунке.
Мы можем попробовать другой способ. Для проверки давайте посмотрим на другое местоположение источника, где будет находиться файл word.
Как мы видим, в файле нет данных, поэтому его размер снова отображается как 0 КБ.
Он будет расположен в папке «Input Location». Если мы посмотрим внутрь файла, то там нет никаких данных.
Теперь мы подставляем источник и место назначения в переменные FirstLocation и Second Location соответственно, затем имя и расширение файла.
Код:
Теперь запустите данный код.
Вы видите, что файл Test Word был скопирован из папки Input Location в папку Output Location с тем же размером, который составляет 0 Кб.
Плюсы FileCopy в VBA
- Может использоваться для копирования более одного файла на один снимок.
- Копирование 10 файлов занимает примерно столько же времени, сколько и копирование одного файла.
- Мы можем использовать любой тип расширения файла, который хотим скопировать.
То, что нужно запомнить
- Всегда помещайте имя файла и расширение файла в конце имени сайта.
- Заключайте ссылки на место назначения и источник в кавычки.
- Затем сохраните код в макросе, чтобы Excel мог использовать и сохранять его в будущем.
- Всегда позволяйте вашему коду копировать файл из исходного местоположения и вставлять его в место назначения.
Рекомендуемые статьи
FileCopy в VBA описывается в этом учебнике. В этой статье мы объясним, как скопировать файл Excel с помощью кода VBA, а также приведем практические примеры и загружаемый шаблон Excel. Вы также можете ознакомиться с другими предлагаемыми нами статьями —