【发布时间】:2021-01-27 21:50:25
【问题描述】:
我正在使用以下代码在 VBA 中重命名文件
Sub Dateien_umbenennen()
Dim xDir As String
Dim xFile As String
Dim xRow As Long
Dim oFSO As Object
Set oFSO = CreateObject("Scripting.FileSystemObject")
xDir = oFSO.GetFolder(ThisWorkbook.Sheets("Sheet1").Range("F4").Value)
xFile = Dir(xDir & "\" & "*")
Do Until xFile = ""
xRow = 0
On Error Resume Next
xRow = Application.Match(xFile, Range("A:A"), 0)
If xRow > 0 Then
Name xDir & Application.PathSeparator & xFile As _
xDir & Application.PathSeparator & Cells(xRow, "B").Value
End If
xFile = Dir
Loop
End Sub
A 列中的旧名称,B 列中的新名称,由单元格 F4 中的值指定的文件夹。 A 列中的某些文件包含 ~ 特殊字符。这些文件没有被重命名,而没有该字符的文件则被重命名。如何重命名包含 ~ 的文件?
【问题讨论】:
-
它们是包含文件名字符串中的字符,还是作为第一个字符?
-
这些文件的名称中是否真的有波浪号 (~),或者它们是长文件名的短版本?我指的是这个:en.wikipedia.org/wiki/8.3_filename
-
它们在文件名字符串中
-
文件名示例:ZBPD_1121630.4-04_WGR_(B~~76)_c_Z_0562_1v1。也许我应该说新名称看起来像这样 ZBPD_1121630.4-04_WGR_(B##76)_c_Z_0562_1v1 (也有特殊字符)
-
有一个插件可以批量重命名文件,它叫做 AuthorTec File Doctor,做一个网络搜索以获取更多信息。我是作者,免费试用 30 天。
标签: vba