【发布时间】:2018-08-01 06:40:27
【问题描述】:
我希望使用 VBA 重命名一组文件夹。目的是从文件夹名称中删除特殊字符,例如 - : ; /等。这是我目前所拥有的:
Sub File_renaming2()
Dim objFSO As FileSystemObject, myObj As Object, mySource As Object, Folder As Variant
Set mySource = myObj.GetFolder("C:\Users\John.Doe\Desktop\ABC\VBA Test folder")
For Each Folder In mySource.Folder
Folder.Name.Replace What:="-", Replacement:=" " 'replace - with space
Folder.Name.Replace What:=":", Replacement:=" " 'replace : with space
Folder.Name.Replace What:=";", Replacement:=" " 'replace ; with space
Folder.Name.Replace What:="/", Replacement:=" " 'replace / with space
Next Folder
End Sub
我是 VBA 的新手,并且将代码从在线类似问题的解决方案中提取出来,但这似乎给了我
运行时错误“91”- 对象变量或未设置块变量。
感谢任何帮助,谢谢!
【问题讨论】:
-
使用
Option Explicit总是有助于发现问题。此外,仅声明对象变量是不够的:在您实际创建它之前,它仍保持为Nothing。 -
我不确定,但您可能需要从子文件夹开始到父文件夹。如果你去的时候改了父名,想改子名,就找不到路径了……