Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 840|回复: 3

求助当目的地文件夹已存在则移动文件夹错误58失败?!如何改代码强制移动?

[复制链接]
发表于 2023-3-8 15:28 | 显示全部楼层 |阅读模式
求助当目的地文件夹已存在则移动文件夹错误58失败?!如何改代码强制移动?

Sub MoveFolder()
Dim FSO As Object
Dim FromPath As String
Dim ToPath As String
FromPath = "C:\子夹"
ToPath = "C:\母夹\子夹"
Set FSO = CreateObject("Scripting.FileSystemObject")
''FSO.MoveFolder FromPath, ToPath           '''''''如果ToPath已存在则会出现错误58无法移动子夹,怎么办?
FSO.CopyFolder FromPath, ToPath, True      ''''文件量大时又慢又占空间,不理想
Set FSO = Nothing
End Sub
其实我们日常手动操作剪切文件夹粘贴文件夹都是可行的,当出现重复文件时的确会提示,统一强制覆盖吧,有没有对应的自动执行代码?
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2023-3-8 15:42 | 显示全部楼层
本帖最后由 cutecpu 于 2023-3-8 15:44 编辑

Sub MoveFolder()
Dim FSO As Object
Dim FromPath As String
Dim ToPath As String
FromPath = "C:\子夹"
ToPath = "C:\母夹\子夹"
Set FSO = CreateObject("Scripting.FileSystemObject")
If FSO.FolderExists(ToPath) Then FSO.DeleteFolder ToPath   '''''''先砍掉~~哈哈
FSO.MoveFolder FromPath, ToPath           '''''''如果ToPath已存在则会出现错误58无法移动子夹,怎么办?
Set FSO = Nothing
End Sub

回复

使用道具 举报

 楼主| 发表于 2023-3-8 15:52 | 显示全部楼层
cutecpu 发表于 2023-3-8 15:42
Sub MoveFolder()
Dim FSO As Object
Dim FromPath As String

您好,感谢,不过我的旧文件夹里面也存了些文件不想删,我想要在保留旧文件夹的基础上不断的并入。。。

点评

了解  发表于 2023-3-8 16:12
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-4-28 14:00 , Processed in 0.252567 second(s), 13 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表