修改一个文件夹下所有的Excel文件的名字为该Excel文件里某个表格里面的文本
把excel文件的名字改成该文件B3表格里面的文本····听说可以用EXCELVBA可以实现,烦请大神要么给我发编译好的VBA文件··要么教我步骤··本人实在不懂VBA·...
把excel文件的名字改成该文件B3表格里面的文本····听说可以用EXCEL VBA可以实现,烦请大神要么给我发编译好的VBA文件··要么教我步骤··本人实在不懂VBA···╮(╯_╰)╭
展开
推荐于2016-06-18 · 知道合伙人软件行家
关注
展开全部
http://tieba.baidu.com/p/2954798276
Sub 批量命名0()
Application.ScreenUpdating = False
Dim i&, j&, m, n, l$, k, s, path, oname, nname, fs, t$
Application.ScreenUpdating = False
With Application.FileDialog(msoFileDialogOpen)
.AllowMultiSelect = True '允许多选
.Show '打开文件对话框
' A列获取文件名称
For i = 1 To .SelectedItems.count
l = .SelectedItems(i)
m = Len(l) - Len(WorksheetFunction.Substitute(l, "\", ""))
k = WorksheetFunction.Substitute(l, "\", "/", m)
n = WorksheetFunction.Find("/", k)
Cells(i, 1) = Mid(l, n + 1, Len(l))
' 获取文件路径
If i = .SelectedItems.count Then path = Mid(l, 1, Len(l) - Len(Cells(i, 1)))
Next i
End With
Stop
' 修改文件名 B列放名称
Set fs = CreateObject("Scripting.FileSystemObject")
For s = 1 To i - 1
oname = path & Cells(s, 1)
If fs.fileexists(oname) Then
nname = path & Cells(s, 2)
Name oname As nname
End If
Next
Application.ScreenUpdating = True
End Sub
Sub 批量命名0()
Application.ScreenUpdating = False
Dim i&, j&, m, n, l$, k, s, path, oname, nname, fs, t$
Application.ScreenUpdating = False
With Application.FileDialog(msoFileDialogOpen)
.AllowMultiSelect = True '允许多选
.Show '打开文件对话框
' A列获取文件名称
For i = 1 To .SelectedItems.count
l = .SelectedItems(i)
m = Len(l) - Len(WorksheetFunction.Substitute(l, "\", ""))
k = WorksheetFunction.Substitute(l, "\", "/", m)
n = WorksheetFunction.Find("/", k)
Cells(i, 1) = Mid(l, n + 1, Len(l))
' 获取文件路径
If i = .SelectedItems.count Then path = Mid(l, 1, Len(l) - Len(Cells(i, 1)))
Next i
End With
Stop
' 修改文件名 B列放名称
Set fs = CreateObject("Scripting.FileSystemObject")
For s = 1 To i - 1
oname = path & Cells(s, 1)
If fs.fileexists(oname) Then
nname = path & Cells(s, 2)
Name oname As nname
End If
Next
Application.ScreenUpdating = True
End Sub
更多追问追答
追问
你应该没有看清楚问题的意思···你这个程序是是把所有的文件名称复制到了A列去了····我要求的是修改图中所有的文件名字··把名字改成这个EXCEL文件中E3单元格里面的内容
好吧·我懂这个程序了··B列是放文件名称的··可是如何把所有每个文件里的B3中的内容提取到B列呢?
追答
两段 程序
1个获取名称
1个改名
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询