帮忙写一个VBS读取Excel的内容,改文件名的批处理

2024-10-31 20:18:43
推荐回答(1个)
回答1:

如下两种方法可供选择:bat批量处理和VBA。
  1、BAT批处理文件
  A. 获取文件名
  选定部分或全选所有文件 > Shift+右键 > 复制为路径 > 粘贴到Excel
  B. 编辑命令符
  l 替换文件名前的路径(全部替换)
  l 生成如下字符(空格不可缺少): REN_原文件名_新文件名
  可以使用EXCEL公式批量处理:
  例如如下公式可将文件名前增加序列号1,2,3等。
  =CONCATENATE("REN","",A1," ",ROW(A1),A1)生成批处理文件
  C. 批处理
  l 文件夹内新建txt文件
  l 复制所有excel中编辑好的字符到txt文件中
  l 文件扩展名更改为bat,运行。

  2、VBA法
  alt+F11,复制如下代码到代码栏,F5运行

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

Sub Rename_()
Dim my_Path, my_Doc As String

With Application.FileDialog(msoFileDialogFolderPicker) '定位文件夹
.Show
.AllowMultiSelect = False
my_Path = .SelectedItems(1)
End With

Dim i As Single
i = 1
my_Doc = Dir(my_Path & "\" & "*") '遍历所有文件
Do While Len(my_Doc) <> 0
Name my_Path & "\" & my_Doc As my_Path & "\" & i & my_Doc '更名:增加序号
i = i + 1
my_Doc = Dir
Loop

my_Doc = Dir(my_Path & "\" & "*")
i = 1
Do While Len(my_Doc) <> 0 '复制到excel
Cells(i, 1) = my_Doc
i = i + 1
my_Doc = Dir
Loop