今儿分享的严格来说不算Excel的内容,但是会使用Excel。会分享这个内容是因为突然想起来了,想当初为了领导让整理资料,几百个文件的名字都要修改成统一格式,为了偷懒我在网上搜了好久的教程,终于有了现在这个办法,兴奋了好久,可惜后来不能大规模部门内推广,所以要是使用的话,自己偷着用,或者问问负责人让不让用哈。不多说,看正文~

以下面这个图片的文件举例子,很乱,什么格式都有,文件名字长短不一,一个一个改费劲,那怎么办呢?就得想有什么办法可以批量修改,那批量的话我就得先获取这些文件的名字,然后批量修改这些名字,那整个的处理过程就分为两步,获取原始名称,修改统一格式。

第一步:获取原始名称

获取的方式网上有很多,我也是从网上学来的,我尽量说的明白些哈。

第一种:TXT获取法

1.在你将要提取文件名的文件夹内,新建一个 txt格式的记事本文 件。

2.在记事本文件中输入: DIR *.* /B >LIST.TXT

3.将此记事本文件后辍名,由 txt改为bat 。会弹出重命名对话框,单击“是”。

4.改完了之后,双击运行这个文件此时就会获得一个 LIST.TXT文件 ,打开之后就时获取到的文件名称了。

这个文件可以重复使用,把它保存为一个常用小工具放在其他文件夹里运行,就可以获取当前文件夹下面的所有文件名了。

第二种:cmd指令获取法

这一种呢和上一个办法类似。

2.进入目标文件夹(cd 目标文件目录),即在窗口输入cd 要提取名称的文件夹路径

3.获取当前文件下目录信息并保存到某个盘的某个文件中(dir >保存路径),即在窗口输入dir >提取之后的文件保存路径,比如dir >1.xls,测试过貌似只能这一个格式,原因不知道,如果以后知道了那就再补充,这里不妨碍使用即可。

4.我把文件保存在d盘了,所以d盘下就出现了1.xls文件,打开之后就是这样啦

这个办法比第一种要复杂一些,不熟悉的不要轻易尝试,不然会试到崩溃,它没法复制,就很气人。反正我的电脑是没法复制,每次写路径都是手敲,敲错了还得重敲,ε=(ο`*)))唉。

第三种:Excel宏文件获取法

这个办法是上面两个办法的进阶版,他可以作为一个工具使用,只要设置好即可,而且提取的信息很全面,即使是视频的时长等信息也可以获取到,唯一的缺点就是,处理大批量的文件时会很卡很耗时间,所以建议处理大批量的时候可以分批次处理,不然电脑卡了就很心累了。

1.开发者工具-插入-按钮控件

2.按钮是在表格中画出来的,然后回自动弹出指定宏的窗口,这时候就新建宏。

3.然后在 sub和end sub之间 粘贴如下代码,保存宏。

Dim objShell, objFolder, objFolderItem, MyFile$, arr(500, 100), n&

Set objShell = CreateObject("shell.application")

With Application.FileDialog(msoFileDialogFolderPicker)

.Title = "选择文件夹"

If .Show = -1 Then objFolder = .SelectedItems(1) Else Exit Sub

End With

MyFile = Dir(objFolder & "\*.*")

Set objFolder = objShell.Namespace(objFolder)

Do While MyFile <> ""

Set objFolderItem = objFolder.ParseName(MyFile)

If n = 0 Then

For i = 0 To UBound(arr, 2)

arr(0, i) = objFolder.GetDetailsOf(0, i)

n = 1

arr(n, 0) = MyFile

arr(n, i) = objFolder.GetDetailsOf(objFolderItem, i)

Next

Else

Next

End If

n = n + 1

MyFile = Dir

Loop

Cells.Clear

Cells(1, 1).Resize(n + 1, UBound(arr, 2) + 1) = arr

4.下面嘛,美化它,按钮上右击,点编辑可以修改按钮的名称。至于怎么使用?直接点击按钮就会弹出窗口选择要提取的文件夹,然后稍等片刻。是真的很慢-_-||

这个办法就是很慢,但是他提取的信息很全面,使用的时候看看自己的需求,如果只是提取文件名称,推荐第一和第二种,如果是提取视频的时长,那可以使用这个工具。

第二步:修改统一格式

好的,文件名称提取好了,那下面就是如何去修改它。

1.按图示整理文件名称,然后输入 ="REN "&原始文件名&" "&更改文件名。

2.得到的指令复制粘贴到一个文本文档中,保存。

3.修改txt的扩展名为bat,双击运行,就变啦~

这种方式有一个弊端就是文件名称本身不能带空格,不然的话就没法变了。至于带空格的怎么办呢?没找到办法,等以后学的多了,遇到了再补充。那这个教程到这里就结束啦,可以自己尝试一下。