问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

Excel 请帮助,怎么VBA批量更改文件名

发布网友 发布时间:2022-04-29 10:15

我来回答

1个回答

热心网友 时间:2022-06-24 14:21

附件 VBA 递归算法 批量提取 & 修改文件名
代码如下:
点击选择文件夹 按钮 选择文件夹, 在C 列输入新文件名后, 点击 重命名按钮 批量重命名

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58

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
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
伊犁师范学院办学规模 伊犁师范大学研究生院建立时间 伊犁师范大学小学教育研究生专业好考不 ...计算除法算式什么除以四十七时错把除数四十七写成了七十四,结果得到... 2024伊犁师范大学研究生学费多少钱一年 被除数47错写成74这样商比原来多了3个而余数恰好相同除数余数各是多少... 在计算除法时把除数47写成74,得到的商是12,余数是29,正确的结果应该�... 用美金换日元好还是用人民币换日元好? 去日本旅游··兑换和实用日元最实惠的方法·· 核桃和桂圆治失眠吗 - 信息提示 求助!在线看央视的视频直播问题,IE总是遇到问题自动关闭! 在哪可以看iphone5的直播发布会???谢谢了~~~具体的。! nba全明星新秀赛那个网站或地方电视台直播/ 谁知道这个直播是谁,直播间ID是什么 聊天室属于直播间嘛 动画《One Room》第三季开播,为何大家都说男主是最帅的? 空中网现在不直播NBA了? 第15届全球华语榜中榜湖南卫视直播吗 2010中超大连实德那个电视台直播大连实德VS陕西中建 哪个网站上可以看年代秀,大家给推荐一个安全的网站吧 请问哪个有NBA直播的网站,高清点的? 有没有那啥直播网?没病毒的? 想找一个1room的视频主播,怎么找? 3月2日大漠谣发布会的时候,网上在哪里能看到直播呢? 网上哪里可以看到高清的欧洲杯直播? 全民直播中room什么意思 老婆梦见蛇向她飞来是什么意思 老婆梦见蛇了 老婆梦到蛇,合伙人也梦到蛇,而且老婆连续两天梦到蛇是什么意思! vba批量修改同文件夹工作薄名称 如何用VBA快速修改文件名 求EXCEL VBA批量修改文件名的代码示例 求助,用vba实现自动批量复制并修改保存文件 批量更改文件夹下所有指定类型文件的扩展名的VBA代码 批量修改多个文件夹的名字 VBA修改指定文件夹 根据EXCEL表内指定名称内容如何用bat批量修改多个文件夹下的子文件夹的名称? 2019excel。怎么用VBA代码,批量编辑修改文件? 谁知道如何批量修改vba中包含本xls的名字 如何批量修改每个文件夹里的文件名吗? word vba问题 如何批量替换文件夹内所有的WORD文档内相同的词组? 过年鸡腿怎么做好吃 怎么把文档里的繁体字改成简体字? 保存的文件变成繁体字怎样让其变成简体中文 word文件繁体字怎么样才能转换成简体字 怎么把文档里的繁体字改成简体 如何将文件中的繁体字转化为简体! 文件名中的繁体中文怎样转换成简体中文? 河南省郑州市管城回族区美景鸿城七里河小区属于哪个街道?- 问一问