!!
嘿嘿,
今天给大家更新一章网上算是比较热的一个EXCEL技巧,
当然这个是用VBA才能做到的,那就是名称的批量修改.
打个比方吧.
如果今天你要整理一下,你过往的一些照片,或者文件,这些文件或者照片要按照编辑时间和事件名称来进行编辑,那么你会怎么办?
或者说,今天我到西湖去玩了一趟,名称都是乱七八糟的,那么我要把这些名称进行批量的修改成"2019.3.19日西湖游玩",
然后过了一天,2019年3.20号我去上海玩了一天,想要修改成"2019.3.20上海游玩."
可能你会有200到500张照片,怎么来进行批量修改?
一个一个的打开来看,然后修改?
这样有点麻烦,当然我的这个视频党总也没做得特别完美,大家可以根据自己的需求进行修改和优化.
还有一个问题,就是我要指定一个统一的模板发给员工进行统计,我负责汇总,那么你编辑好这个文件之后,怎么把这些文件名称修改成你拟定好的文件名,或许你有100个文件需要批量修改,
如果你学会这个方法,其实只需要,复制你的文件名然后批量修改.
都是之前录的视频,可能在拼接的时候,有点问题.
视频观看:
中间牵涉一些代码,按照视频的逻辑,然后模拟一下吧.
Sub ????????()
Dim X, Y As Integer
Dim Z As String
X = ??????.Range("B" & Rows.Count).End(xlUp).Row
Z = InputBox("???????", "Input Data")
For Y = 4 To X
Range("B" & Y).Value = Format(Left(Range("C" & Y).Value, Len(Range("C" & Y)) - 8), "YYYY-MM-DD") & Z & "(" & Y - 3 & ")" & Right(Range("B" & Y).Value, Len(Range("D2")))
Next Y
End Sub
Sub ??????????????()
Dim X, Y As Integer
Dim Z As String
X = ??????.Range("B" & Rows.Count).End(xlUp).Row
For Y = 4 To X
Range("B" & Y).Value = Format(Left(Range("C" & Y).Value, Len(Range("C" & Y)) - 8), "YYYY-MM-DD") & "(" & Y - 3 & ")" & Right(Range("B" & Y).Value, Len(Range("D2")))
Next Y
End Sub
Sub ????????()
Dim i As Integer
i = 3
Set ????? = CreateObject("Scripting.FileSystemObject")
Set ????? = ?????.GetFolder(??????.Cells(2, 1)).Files
For Each ??? In ?????
??? = Right(???, Len(Range("D2")))
If ??? = Range("D2").Value Then
i = i + 1
??????.Cells(i, 1) = ???.Name:
??????.Cells(i, 3) = ???.datecreated:
End If
Next
Range("B4:B2000") = Range("A4:A2000").Value
End Sub
Sub ???????()
Dim X, Y As Integer
X = 3
Do While Range("A" & X + 1) <> ""
X = X + 1
Name ??????.Cells(2, 1) & "\" & ??????.Cells(X, 1) As ??????.Cells(2, 1) & "\" & ??????.Cells(X, 2)
Loop
MsgBox "???", vbOKOnly
End Sub
Sub ??????????()
Dim X, Y As Integer
X = 3
Do While Range("A" & X + 1) <> ""
X = X + 1
Name ??????.Cells(2, 1) & "\" & ??????.Cells(X, 1) As ??????.Cells(2, 1) & "\" & ??????.Cells(X, 2) & Range("D2").Value
Loop
MsgBox "???", vbOKOnly
End Sub