今天同事提出需求要实现利用excel批量修改某文件夹下的图片重命名,衡量到各种条件,最后还是选择了vbs来实现。代码如下
代码
vbscript
' 创建Excel对象
Set objExcel = CreateObject("Excel.Application")
objExcel.Visible = False ' 隐藏Excel窗口
' 打开Excel文件
Set objWorkbook = objExcel.Workbooks.Open("C:\路径\至\您的\Excel文件.xlsx")
Set objWorksheet = objWorkbook.Worksheets(1)
' 获取Excel中的数据
row = 2 ' 从第二行开始,跳过标题行
Do Until objWorksheet.Cells(row, 1).Value = ""
' 获取文件名和新文件名
oldFileName = objWorksheet.Cells(row, 1).Value
newFileName = objWorksheet.Cells(row, 2).Value
' 构建完整路径
oldFilePath = "C:\路径\至\您的\图片文件夹\" & oldFileName
newFilePath = "C:\路径\至\您的\图片文件夹\" & newFileName
' 更改文件名
Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FileExists(oldFilePath) Then
objFSO.MoveFile oldFilePath, newFilePath
End If
row = row + 1
Loop
' 关闭Excel对象
objWorkbook.Close False
objExcel.Quit
Set objWorksheet = Nothing
Set objWorkbook = Nothing
Set objExcel = Nothing
请将上述代码中的路径替换为您实际的Excel文件路径、图片文件夹路径,并确保Excel文件格式正确以及图片文件存在。
要运行这个VBScript脚本,您可以将代码保存为一个 .vbs 文件,然后双击运行它。脚本将按照Excel文件中的文件名和新文件名来批量更改图片文件的名称。
请注意,执行VBScript脚本可能需要管理员权限,具体取决于您系统的设置。如果遇到权限问题,请尝试以管理员身份运行脚本。