vba - 在 Excel 中使用列表重命名文件
问题描述
我正在尝试根据 excel 中的列表重命名文件,使得 A 列具有旧文件名,B 列具有新文件名。它适用于某些文件,但不能重命名某些文件。这是我使用的宏:
Sub RenameFiles()
Dim xDir As String
Dim xFile As String
Dim xRow As Long
With Application.FileDialog(msoFileDialogFolderPicker)
.AllowMultiSelect = False
If .Show = -1 Then
xDir = .SelectedItems(1)
xFile = Dir(xDir & Application.PathSeparator & "*")
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 If
End With
End Sub
这是我的excel文件名的截图:
谁能告诉我这里有什么问题?任何帮助,将不胜感激。提前致谢
解决方案
推荐阅读
- java - 带有 OOP 的 Java 应用程序杂货订购逻辑
- javascript - Javascript:单击元素而不是按钮
- java - 在 Spring Boot 上读取超时
- c# - ormlite async 方法使用 miniprofiler 抛出强制转换异常
- java - 如何跟踪曲目的结尾(MediaPlayer)
- c# - 如何在 Azure Signal R 中向经过身份验证的用户发送通知?
- javascript - 如何从用户 twitter api + javascript 检索所有推文
- python - Discord Self-Bot:加入服务器/公会时直接向用户发送消息
- javascript - Emscripten:使用 pthread 时的自定义消息处理程序
- biztalk - Can BizTalk be used to fetch data from a dynamic URL?