返回目录:excel表格制作
分享这个方法。
第一步、e799bee5baa6e997aee7ad94e4b893e5b19e366在c盘建立一个文件夹,将下载的图片放置于该文件夹中,
第二步、鼠标左键点击,开始-》运行-》在对话框中输入字母“cmd”,进入dos模式 ,
第三步、在dos模式输入命令行“cd c:\pic”然后回车,再输入命令行“dir /b>rename.xls",如下图所示,可将文件夹中的文件名在rename.xls文件中列出。
小贴士:有的时候,你的计算机正处于中文输入状态,为确保命令行能够打出来,也可以切换成英文大写状态。
第四步、随后用Excel打开c:\pic文件夹中的rename.xls,你会发现文件名以全部罗列在A列中(你也可以用鼠标来调整文件名的顺序),你可以在B1列中输入1.jpg作为第一个文件文件名。
第五步、鼠标选中B1单元格,并在B1列的右下方,使鼠标光标变为+号时,拖动使所有jpg文件的右侧B列中都有文件名。再将A8单元格中没有用的文件名删除,
第六步、鼠标选中C1单元格,并在编辑框中输入公式="ren "&A1&" "&B1,。
第七步、继续用鼠标拖动C1单元格右下方的句柄,使剩余的C2-C7单元格填充如下图所示。
第八步、然后,鼠标选中C列,鼠标右键复制,
第九步、在记事本中,粘贴刚才的命令行,
第十步、鼠标点击菜单“文件”——“另存为”,输入文件名ren.bat,要注意下红圈中的路径及扩展名选项。
第十一步、打开c盘pic文件夹,鼠标双击ren.bat这个批处理文件,即可将该文件夹下的jpg图片,按照刚才rename.xls中的顺序和文件名批量修改文件名
假设旧文件e799bee5baa6e59b9ee7ad94338名在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执行即可。
方法/步骤
比如,这里需要把11.20这个文件夹里面的所有的excel表格名称批量修改一下,当然这里是演示,表格不多,可以一个一个的该,但是如果是有很多的,那么一个一个的改,就非常费劲了。
第一步,先把“11.20”这个文件夹,整个拖动到浏览器,获取文件索引,目前支持的浏览器不是很多,这里使用360浏览器,当然也可以选择其他的,不过不一定所有的浏览器都可以。
第二步,选择复制文件名称索引,然后复制到excel表格中,选择粘贴为文本,然后只选择文件名称即可,其他的都可以不要,然后新建一个excel,把文件名称复制,粘贴。
第三步,先在新建的excel表格中,把原来的公司名称,以及想要修改的公司名称,然后用公式,="ren "&B2&" "&C2,下拉公式,就可以得到我们想要的东西e69da5e6ba90e799bee5baa6e997aee7ad94366了,后面需要用到。
第四步,新建一个文本文档,然后把在excel表格中,用公式得到的数据,复制粘贴在里面,比如这里演示的,还是在这个“11.20”文件夹里面,新建一个文本文档,把数据填写进去保存。
第五步,然后修改文本文档的格式,把后缀.txt改为.bat,比如这里“批量修改名称.txt”改为“批量修改名称.bat”,然后双击.bat这个文件,在这个文件夹里面的,就都名称变了。
附件 VBA 递归算法 批量提取 & 修改文件名
代码如下:
点击选择文件夹 按钮 选择文件夹, 在C 列输入新文件名后, 点击 重命e68a84e79fa5e98193362名按钮 批量重命名
Option Explicit
Private Fso As Object, Mypath As String
Sub 选择文件夹()
Dim Fo
Call 清除
With Application.FileDialog(msoFileDialogFolderPicker)
.Title = "请选择要批量重命名文件的文件夹"
.Show
If .SelectedItems.Count = 0 Then Exit Sub
Mypath = .SelectedItems(1) & "\"
End With
Set Fso = CreateObject("Scripting.FileSystemObject")
Set Fo = Fso.getfolder(Mypath)
Call 递归(Fo)
End Sub
Sub 获取文件名(Folder)
Dim Fi, filename As String, r As Integer
For Each Fi In Folder.Files
r = Range("A65536").End(xlUp).Row + 1
filename = Fi.Name
Cells(r, 1) = Folder.Path & "\"
Cells(r, 2) = Fso.getbasename(filename)
Cells(r, 4) = "." & Fso.GetExtensionName(filename)
r = r + 1
Next
End Sub
Sub 递归(Folder)
Dim Fi, Fo
Call 获取文件名(Folder)
If Folder.subFolders.Count > 0 Then
For Each Fo In Folder.subFolders
Call 递归(Fo)
Next
End If
End Sub
Sub 重命名()
Dim i As Integer, r As Integer, Rng As Range
r = Range("A65536").End(xlUp).Row
For Each Rng In Range("C2:C" & r)
If Rng = "" Then MsgBox "请将新文件名填写完整!", 64, "提示": Exit Sub
Next
For i = 2 To Range("A65536").End(xlUp).Row
Name Cells(i, 1) & Cells(i, 2) & Cells(i, 4) As Cells(i, 1) & Cells(i, 3) & Cells(i, 4)
Next
MsgBox "文件名修改完成!", 64, "提示"
Call 清除
End Sub
Sub 清除()
Dim r As Integer
r = Range("A65536").End(xlUp).Row
If r = 1 Then Exit Sub
Range("A2:D" & r).ClearContents
End Sub