用VBA实现选择文件夹中图片文件批量重命名

1、 效果展示:(图片原来的名称与重命名后的名称如下图)

2、代码 

Sub 重命名图片V2()

    Dim folderPath As String
    Dim file As String
    Dim Name0, Name1 As String
    Dim dialog As FileDialog
    Dim n
    
    Set dialog = Application.FileDialog(msoFileDialogFolderPicker)
    
    ' 打开文件夹选择对话框
    With dialog
        .Title = "选择文件夹"
        .AllowMultiSelect = False
        If .Show <> -1 Then
            MsgBox "未选择文件夹!"
            Exit Sub
        Else
            folderPath = .SelectedItems(1)
        End If
    End With
    
    ' 获取名称前缀后缀
    Name0 = "第"
    Name1 = "题图"
    
    ' 遍历文件夹中的所有文件
    file = Dir(folderPath & "\*.*")
    Do While file <> ""
        ' 如果是图片文件,则进行重命名
        If InStr(1, LCase(file), ".jpg") > 0 Or InStr(1, LCase(file), ".jpeg") > 0 Or InStr(1, LCase(file), ".png") > 0 Or InStr(1, LCase(file), ".gif") > 0 Or InStr(1, LCase(file), ".bmp") > 0 Then
            n = SplitString(file, ".")
            Name folderPath & "\" & file As folderPath & "\" & Name0 & n(0) & Name1 & "." & n(1)
        End If
        file = Dir
    Loop
    
    MsgBox "图片重命名完成!"
End Sub

Function SplitString(str, fen)
    Dim arr() As String
    
    arr = Split(str, fen)
    
    If UBound(arr) > 0 Then
        SplitString = Array(arr(0), arr(1))
    Else
        SplitString = Array("", "")
    End If
End Function

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值