问题描述
我在一个文件夹中有数百个文件,文件名中包含字符 口。我最终想使用 vba 宏移动文件。我有第二个宏来替换文件名中的字符,但它无法替换口。 VBA 用问号替换口,因此宏在尝试重命名时会中断。我该如何解决这个问题?
示例文件名:“Calaloo - Direct Brands 2010q4 `92661 ck 口 us 口 Stmt 1.45 PB 8.69 EB 10.14 -mm 56569.pdf”
(更新为包含 unicode 代码并使用 FSO)
Sub rename_files_replace_character_FSO()
Dim FSO As Scripting.FileSystemObject,fldr As Folder,f As File,ts As TextStream
Dim sPath,sOld,sNew,sNewFile As String
Dim wbMain As Workbook
Dim wsMain As Worksheet
Set wbMain = ThisWorkbook
Set wsMain = wbMain.Worksheets("Rename Files")
Set FSO = New Scripting.FileSystemObject
sPath = wsMain.Range("B2").Value
If Right(sPath,1) <> "\" Then sPath = sPath + "\"
sOld = wsMain.Range("C2").Value
sNew = wsMain.Range("D2").Value
Set fldr = FSO.GetFolder(sPath)
For Each f In fldr.Files
sNewFile = Replace(f,ChrW$(21475),sNew)
Debug.Print f
Name f As sNewFile
Next
Set f = nothing
Set fldr = nothing
Set FSO = nothing
End Sub
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)