比如D:\abcd文件夹下有1000个*.jpg的文件,现在要把这些所有文件都替换成*.bmp,怎么做,要求用VBA写(不是DOS和批处理文件,这些都已经会了),因为要更另外一段程序共同使用,想要一步到位的做法
Private Sub Workbook_Open()
On Error Resume Next
thepath = InputBox("文件所在路径:")
Set fso = CreateObject("scripting.filesystemobject")
For Each fil In fso.getfolder(thepath).Files
If Right(fil.Name, 3) = "jpg" Then
fil.Name = Left(fil.Name, Len(fil.Name) - 3) & "BMP"
End If
Next
End Sub追问
On Error Resume Next
thepath = InputBox("文件所在路径:")
Set fso = CreateObject("scripting.filesystemobject")
For Each fil In fso.getfolder(thepath).Files
If Right(fil.Name, 3) = "jpg" Then
fil.Name = Left(fil.Name, Len(fil.Name) - 3) & "BMP"
End If
Next
End Sub追问
就只要把D:\abcd的文件夹进行更改就好了,代码怎么写?
追答你运行程序了么??里面都有提示的
追问运行了,我希望不需要提示,直接就把D:\abcd底下的文件改掉就好了。
追答thepath = "D:\abcd"追问貌似只有一小部分能转化成功,其他的绝大多数都无法转换,再帮忙看看是什么原因,谢谢!
另外
If Right(fil.Name, 3) = "jpg" Then
fil.Name = Left(fil.Name, Len(fil.Name) - 3) & "BMP"
这里面的3指的是jpg或bmp的字母数吧?
有的图片是JPEG的格式,那是不是说直接把3改为4就好了呢?
是的
追问貌似不行,只有少部分能转换过去,大部分不行,你再试试?
追答不可能
温馨提示:答案为网友推荐,仅供参考