魍者归来 发表于 2020-5-5 15:03:33

【魍生技】快速统计文件名

有时候我们统计当前文件夹内某种文件的文件名,少的时候当然手打就ok,面对几百张图纸的时候这并不是个理智的方法。

所以这个时候就可以祭出【批处理】了:

1、新建一个.txt文件。
2、打开,输入以下红字内容(这里以统计.PDF文件为例):
DIR*.pdf /B>LIST.TXT

3、保存文件,将.txt后缀改为.bat。
4、双击运行,会在当前文件夹生成一个LIST.TXT文件,打开可以看到里面的内容就是当前文件夹下全部PDF文件清单。

特别的说明:

[*]上述红色字体的部分可以直接复制黏贴,所有字符(包括空格)均为英文半角。
[*].pdf可以替换成自己需要的后缀名,比如统计图纸的时候可以改成.dwg等。
[*]LIST.TXT是用来存储清单的文本文档,其中LIST可以替换成自己习惯的名字,但不要用中文,会出现乱码。
[*]保存好的.bat文件复制到任何有权限的文件夹都可以使用。(注意:不会统计子文件夹中的文件)


shaokuang 发表于 2020-5-5 16:10:43

转帖
批量获取文件名
这里分享工具下载链接:

http://pan.baidu.com/s/1o8u6aiY

功能:批量获取同一个文件夹内的文件名,并根据文件名统计分支机构的文档报送情况。

使用方式:将表格文件放入存放需要统计各种文件的文件夹内,打开EXCEL表格,选择需要统计的文件类型,点击按钮运行宏即可。

注意事项:最好在收集保存文件时,按照报送机构关键字重命名文件(可以通过VBA代码在OUTLOOK中自动存储邮件的附件并重命名,这个以后再和大家分享)。

授人以鱼不如授人以渔,这里直接上代码:

Private Sub 提取文件名()

Dim FileName As String

Dim i As Long

Dim tmp As String

mypath = ActiveWorkbook.Path

FileName = Dir(mypath & "\*.*")'如果是仅需要统计特定类型的文件如EXCEL,将*.*改为*.xlsx即可,以此类推

i = 0

Range("N:N").ClearContents

Do While FileName > ""

i = i + 1

Range("N" & i) = FileName

FileName = Dir

Loop

End Sub

007learn 发表于 2020-5-5 18:20:06

收藏了,感谢分享。

晓昀 发表于 2020-5-5 23:04:26

“/B”代表的含义是什么?

远祥 发表于 2020-5-6 14:13:20

这是个好主意!

魍者归来 发表于 2020-5-6 15:09:26

晓昀 发表于 2020-5-5 23:04
“/B”代表的含义是什么?


上图是命令行中的提示信息,/B相当于输出简化的格式(也就是文件名或文件夹名)


上图是两个命令的对比:①用了dir /b,输出的是所在文件夹包含的子文件夹名和文件名;②用了dir,输出的是驱动器和文件(夹)的信息。

sf-1224 发表于 2020-5-7 08:59:27

收藏了,谢谢!

苏州万坤信息 发表于 2020-6-11 13:07:55

分享

妖洞两拐 发表于 2021-8-15 10:01:45

怎么批量在文件名中汉字前后加上括号?

魍者归来 发表于 2021-8-15 10:17:12

妖洞两拐 发表于 2021-8-15 10:01
怎么批量在文件名中汉字前后加上括号?

这个需求很古怪,一般都是要去括号的。可以拿excel中的替换功能当桥梁,批量修改文件名。或者有闲暇时间的,可以直接摞代码搞定。
页: [1]
查看完整版本: 【魍生技】快速统计文件名