文件管理 · 2024年2月24日

vba移动文件夹|Excel 请问如何用vba复制文件到另一个文件夹下面

A. VBA 移动文件夹内所有文件,有重复则强制覆盖

下面的代码执行成功:

Subxxx()DimwshSetwsh=CreateObject("WScript.Shell")wsh.Run"notepad.exe"Setwsh=NothingEndSub

我认为,你修改wsh.Run的参数,可以调用系统的move命令实现你的功能,估计是这样,你可能需要调试:

Submovefile(PTH,FILES,PTH2)DimwshSetwsh=CreateObject("WScript.Shell")wsh.Run"MOVE/Y"&PTH&""&FILES&""&PTH2&""Setwsh=NothingEndSub

B. 请问如何通过exceel-VBA实现从某文件夹下移动指定文件名的excel文件到另一个文件夹

这个我来给你做吧如果可以你尽可能给我写详细的信息把你个文件打个包给我法过来我好debug 现在的文件在那个地址,想要拷到哪个地址 搞定了Sub x()Dim xpath1 As String, xpath2 As String, xfile As Stringxpath1 = "e:\1\" '原来的文件所在文件夹xpath2 = "e:\1\2\" '要移动到的目的文件夹For i = 1 To 100 '这个上限你自己看着给,我想100够大了,不够的话你自己往上调 If Cells(i, 2) <> "" Then xfile = xpath1 & Cells(i, 2) & ".xlsx" If Dir(xfile) <> "" Then FileCopy xfile, xpath2 & Cells(i, 2) & ".xlsx" Kill xfile Else Cells(i, 3) = xfile & "文件未找到" End If End IfNextEnd Sub

C. Excel 请问如何用vba复制文件到另一个文件夹下面

用FileCopy语句即可。例如将“D:\123.txt"文件复制到C:\ABC文件夹下:FileCopy D:\123.txt C:\ABC\123.txt当然在复制的同时还可以改变文件名

D. 如何用VBA复制整个文件夹包括子目录

Sub Files(Path As String, afterPath)'Path:原文件夹路径;afterPath:目标文件夹路径Dim Spath As StringSet fs = CreateObject("Scripting.FileSystemObject")Spath = Dir(Path, vbDirectory)Do While Len(Spath)If Spath <> "." And Spath <> ".." Thenfs.CopyFolder Path, afterPathSpath = Dir()End IfLoopEnd Sub————————————————版权声明:本文为CSDN博主「前端小菜鸟007」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/weixin_41844140/article/details/103188537

E. VBA 移动指定文件夹下所有文件 有重复的需要覆盖原文件

同意楼上看法,先判断是否存在,您说“文件名重复的文件内容也是完全相同的”,所以如果判断 c:\processed中已有,则不移动:Sub movefile(PTH, FILES, PTH2) Dim MyFileObject Set MyFileObject = CreateObject("Scripting.FileSystemObject") For Each file In MyFileObject.getfolder(PTH).FILES If Dir(PTH2 & "\" & Dir(file)) = "" Then ‘判断PTH2中是否已有 MyFileObject.movefile PTH & "\" & Dir(file), PTH2 & "\" End If Next End Sub

F. Excel vba name a as b,到底是重命名文件,还是移动文件呢

不同路径下是移动并重命名,同一路径下只能重命名,这一点在帮助文件中,已经说的很清楚。以下是帮助文件复制过来的:Name 语句重新命名一个文件、目录、或文件夹。语法Name oldpathname As newpathnameName 语句的语法具有以下几个部分:部分 描述oldpathname 必要参数。字符串表达式,指定已存在的文件名和位置,可以包含目录或文件夹、以及驱动器。 newpathname 必要参数。字符串表达式,指定新的文件名和位置,可以包含目录或文件夹、以及驱动器。而由 newpathname 所指定的文件名不能存在。 说明Name 语句重新命名文件并将其移动到一个不同的目录或文件夹中。如有必要,Name 可跨驱动器移动文件。 但当 newpathname 和 oldpathname 都在相同的驱动器中时,只能重新命名已经存在的目录或文件夹。 Name 不能创建新文件、目录或文件夹。在一个已打开的文件上使用 Name,将会产生错误。必须在改变名称之前,先关闭打开的文件。Name 参数不能包括多字符 (*) 和单字符 (?) 的统配符。

G. word和excel文件在同一文件夹,word引用excel的数据,当文件夹移动,用vba实现相对路径而不是绝对路径

VBA是可以查到WORD文档所在的路径的,所以你只要在程序中加一个这个功能就可以了EXCEL文档放在WORD文档相同的路径中,那么程序就可以根据前边所说的路径来更新信息