VBA 将文件从一个目录复制到另一个目录

问题描述 投票:0回答:3

我有一个访问文件,我经常需要将其复制到另一个目录,以替换最后一个版本。 我想使用 Excel 宏来实现此目的,并且还想在此过程中重命名文件。

   fileName = "X:\Database\oldName.accdb"
   copyDestination = "Y:\dbstore\"
   newName = "newName.accdb"

有简单的方法吗?

vba copy
3个回答
84
投票

在 Scripting.FileSystemObject 中使用适当的方法。那么您的代码将更容易移植到 VBScript 和 VB.net。要开始使用,您需要包括:

Dim fso As Object
Set fso = VBA.CreateObject("Scripting.FileSystemObject")

然后你就可以使用

Call fso.CopyFile(source, destination[, overwrite] )

其中源和目标是文件的全名(包括路径)。

请参阅 https://learn.microsoft.com/en-us/office/vba/Language/Reference/user-interface-help/copyfile-method


82
投票

如果您接受较少的选项,此方法会更简单:

FileCopy source, destination

0
投票

子 FSOcopyAllFiles() 调暗 FSO 作为新的 FileSystemObject 将 FromPath 变暗为字符串 将 ToPath 调暗为字符串 将 FileInFromFolder 变暗为对象

FromPath = "C:\Users\Windows\Desktop\for email\"
ToPath = "J:\Auchan ds test 2024\For print\"

Set FSO = CreateObject("Scripting.FileSystemObject")

For Each FileInFromFolder In FSO.GetFolder(FromPath).Files
    FileInFromFolder.Copy ToPath
Next FileInFromFolder

结束子

© www.soinside.com 2019 - 2024. All rights reserved.