乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > 如何利用<em>excel</em>对图片批量改名

如何利用<em>excel</em>对图片批量改名

作者:乔山办公网日期:

返回目录:excel表格制作


假设旧文件e799bee5baa6e79fa5e98193e59b9ee7ad94338名在A列,新文件名在B列。

使用VBA宏即可。


具体步骤:

  • 打开Excel

  • 按下快捷键Alt+F11,打开宏编辑器

  • 输入代码

Sub renameGo_by_zzllrr()
    Application.ScreenUpdating = False
    
    If Range("A1") = "" Then End
    
    Set fs = CreateObject("Scripting.FileSystemObject")
    cnt = 0
    For i = 1 To Columns(1).Find("*", , , , 1, 2).row
        file = "D:\zzllrr\" & Range("A" & i)
        n = Range("B" & i)
        If Dir(file, 16) = "" Then
            Range("A" & i).Interior.Color = RGB(255, 0, 0)
            
        Else
            
            If n <> "" Then
                Set f = fs.GetFile(file)
                If Dir("D:\zzllrr\" & n) <> "" Then
                    With Range("A" & i & ":B" & i).Interior
                        .Pattern = xlSolid
                        .PatternColorIndex = xlAutomatic
                        .Color = 255
                    End With
                Else
                    f.Name = n
                    cnt = cnt + 1
                End If
            End If
        End If
    Next i
    Set f = Nothing
    Set fs = Nothing
    
    If cnt > 0 Then MsgBox "Rename OK! Well Done!", vbOKOnly, Sheets(1).Name
    
End Sub


  • 按下F5执行即可。



不太清楚你要命名的规则,
批量重命名如果只是改成图片01,图片02,。。。可以用ACDSee来做。
如果是随机的,可以用Dos命令行 ren aa.jpg 11.jpg
如果多的话可以建一个名为xxx.bat的批处理文件,实际上就是一个文本文件。
在里面输入DoS命令行
ren aa.jpg 11.jpg
ren aba.jpg 125.jpg
ren adsa.jpg 115.jpg
手动生成比较麻烦,可以用EXCEL来做。但是也需要一定的Dos的知识。不知道你的意图是什么。
用Excel打开图片文件是比较容易的,只需要用HYPERLINK函数产生打开图片的链接就可以了,不过,还要修改图片的默认打开程序,以便于用图片编辑软件对图片进行编辑,编辑后还要选择另外的文件路径进行另存为。
这种操作容易失误,不如先把图片复制到zhidao新的文件夹中,再用图片编辑软件进行剪切操作。
下面就说一下用Excel复制图片的方法。
假如图片文件名在A列,在B1单元格输入公式
="copy ""源文件夹路径\"&A1&""" ""目标文件夹名\"""
由于我不知道你的图片在什么文件夹,新的文件夹又是什么,所以只好用“源文件夹路径”代表原图片所在路径,用“目标文件夹名”代表新的图片存放位置。
向下复制公式,得到各图片的复制代码。选中B列代码所在区域,复制。
在运行中输入 cmd,打开命令提示符窗口,右击,粘贴。
图片复制完成后,自己用图片编辑软件一个个地打开进行剪切吧。

可以用VBA来实现你要的功能,具体方法可以参考下面的来实现:

1、首先建立一个EXCEL表 其中第一个工作薄名称为照相顺序表 如下图
Sub 照片重命名()
If MsgBox("程序将重命名与本工作薄同目录7a64e4b893e5b19e332下的所有照片文件,确认这样做么?", vbYesNo) <> 6 Then
Exit Sub
End If
Dim oldname As String '旧文件名变量oldname
Dim newname As String '新文件名变量newname
Dim photopath As String '路径变量photopath
Dim nophoto As String '错误提示变量nophoto
Dim i As Integer '循环变量i
photopath = ThisWorkbook.Path '为要修改的文件名路径复制为当前excel文件的路径
For i = 2 To Worksheets("照相顺序表").Range("a65536").End(xlUp).Row '开始循环 从“照相顺序表”工作薄的a2单元格开始
'为新文件名变量赋值为路径变量& \ & 照相顺序表工作薄中的a2&b2单元格内容加上扩展名.jpg
newname = photopath & "\" & Worksheets("照相顺序表").Cells(i, 1).Text & Worksheets("照相顺序表").Cells(i, 2).Text & ".jpg"
'为旧文件名变量赋值为路径变量& \ & 照相顺序表工作薄中的c2单元格内容&扩展名.jpg
oldname = photopath & "\" & Worksheets("照相顺序表").Cells(i, 3).Text & ".jpg"
'判断旧文件名是否在当前目录存在
If Dir(oldname) <> "" Then
Name oldname As newname '存在则改名
Else
nophoto = nophoto & Chr(10) & oldname‘不存在则将其赋值给错误提示变量并以回车分割累加
End If
Next i
If nophoto <> "" Then
MsgBox nophoto & Chr(10) & "图片不存在" ’存在错误提示则弹出错误提示框
End If
End Sub

相关阅读

  • 如何利用<em>excel</em>对图片批量改名

  • 乔山办公网excel表格制作
  • 假设旧文件e799bee5baa6e79fa5e98193e59b9ee7ad94338名在A列,新文件名在B列。使用VBA宏即可。具体步骤:打开Excel按下快捷键Alt+F11,打开宏编辑器输入代码Sub renameGo_by_zzllrr() Application.ScreenUpd
关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网