如何根据Excel中的单元格列表重命名文件夹中的所有图像名称?
您是否尝试过根据工作表中的单元格列表重命名图像? 如果是这样,您是否有任何技巧可以快速处理这项工作,而无需一一重命名? 在本文中,我介绍了两个VBA代码以在Excel中快速处理此工作。
重命名文件夹中的所有图像名称
重命名文件夹中的所有图像名称
要重命名指定文件夹中的所有图像名称,必须首先在工作表中列出原始名称。
1。 按 Alt + F11键 启用 Microsoft Visual Basic应用程序 窗口。
2。 点击 插页 > 模块 并将以下代码粘贴到脚本中。
VBA:获取文件夹的图片名称
Sub PictureNametoExcel()
UpdatebyExtendoffice201709027
Dim I As Long
Dim xRg As Range
Dim xAddress As String
Dim xFileName As String
Dim xFileDlg As FileDialog
Dim xFileDlgItem As Variant
On Error Resume Next
xAddress = ActiveWindow.RangeSelection.Address
Set xRg = Application.InputBox("Select a cell to place name list:", "KuTools For Excel", xAddress, , , , , 8)
If xRg Is Nothing Then Exit Sub
Application.ScreenUpdating = False
Set xRg = xRg(1)
xRg.Value = "Picture Name"
With xRg.Font
.Name = "Arial"
.FontStyle = "Bold"
.Size = 10
End With
xRg.EntireColumn.AutoFit
Set xFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
I = 1
If xFileDlg.Show = -1 Then
xFileDlgItem = xFileDlg.SelectedItems.Item(1)
xFileName = Dir(xFileDlgItem & "\")
Do While xFileName <> ""
If InStr(1, xFileName, ".jpg") + InStr(1, xFileName, ".png") + InStr(1, xFileName, ".img") + InStr(1, xFileName, ".gif") + InStr(1, xFileName, ".ioc") + InStr(1, xFileName, ".bmp") > 0 Then
xRg.Offset(I).Value = xFileDlgItem & "\" & xFileName
I = I + 1
End If
xFileName = Dir
Loop
End If
Application.ScreenUpdating = True
End Sub
3。 按 F5
键运行代码,并弹出一个对话框,提醒您选择一个单元格以输出名称列表。 看截图:
4。 点击 OK
并选择需要在当前工作表中列出其图片名称的指定文件夹。 看截图:
5。 点击 OK。 图片名称已在活动工作表中列出。
然后,您可以重命名图片。
1。 按 Alt + F11键 启用 Microsoft Visual Basic应用程序 窗口。
2。 点击 插页 > 模块 并将以下代码粘贴到脚本中。
VBA:获取重命名图片
Sub RenameFile()
UpdatebyExtendoffice20170927
Dim I As Long
Dim xLastRow As Long
Dim xAddress As String
Dim xRgS, xRgD As Range
Dim xNumLeft, xNumRight As Long
Dim xOldName, xNewName As String
On Error Resume Next
xAddress = ActiveWindow.RangeSelection.Address
Set xRgS = Application.InputBox("Select Original Names(Single Column):", "KuTools For Excel", xAddress, , , , , 8)
If xRgS Is Nothing Then Exit Sub
Set xRgD = Application.InputBox("Select New Names(Single Column):", "KuTools For Excel", , , , , , 8)
If xRgD Is Nothing Then Exit Sub
Application.ScreenUpdating = False
xLastRow = xRgS.Rows.Count
Set xRgS = xRgS(1)
Set xRgD = xRgD(1)
For I = 1 To xLastRow
xOldName = xRgS.Offset(I - 1).Value
xNumLeft = InStrRev(xOldName, "\")
xNumRight = InStrRev(xOldName, ".")
xNewName = xRgD.Offset(I - 1).Value
If xNewName <> "" Then
xNewName = Left(xOldName, xNumLeft) & xNewName & Mid(xOldName, xNumRight)
Name xOldName As xNewName
End If
Next
MsgBox "Congratulations! You have successfully renamed all the files", vbInformation, "KuTools For Excel"
Application.ScreenUpdating = True
End Sub
3。 按 F5
键运行代码,并弹出一个对话框,提醒您选择要替换的原始图片名称。 看截图:
4。 点击 OK
,然后在第二个对话框中选择要替换图片名称的新名称。 看截图:
5。 点击 OK
,将弹出一个对话框,提醒您图片名称已成功替换。
6.单击确定,图片名称已替换为工作表中的单元格。
相关文章:
如何基于Excel中的单元格值重命名工作表?
最佳办公生产力工具
将小时转化为分钟 Kutools for Excel!
准备好增强您的 Excel 任务了吗? 利用的力量 Kutools for Excel - 您终极的节省时间的工具。 简化复杂的任务并像专业人士一样浏览数据。 以闪电般的速度体验 Excel!
为什么需要 Kutools for Excel
🛠️ 超过 300 项强大功能: Kutools 包含 300 多项高级功能,可简化您在 1500 多种场景中的工作。
📈 卓越的数据处理能力:合并单元格、删除重复项并执行高级数据转换 - 所有这些都不费吹灰之力!
⏱️ 高效的批量操作:当你可以聪明地工作时,为什么还要付出额外的努力呢? 轻松批量导入、导出、组合和调整数据。
📊 可定制的图表和报告:访问各种附加图表并生成富有洞察力的报告。
🗄️ 强大的导航窗格:通过强大的列管理器、工作表管理器和自定义收藏夹获得优势。
📝 七种类型的下拉列表:通过各种功能和类型的下拉列表使数据输入变得轻而易举。
🎓 用户友好:对于初学者来说轻而易举,对于专家来说是一个强大的工具。
立即下载,与 Excel 一起穿越时空!
阅读更多
免费下载... 采购...
Office Tab 为 Office 带来选项卡式界面,让您的工作更轻松
在Word,Excel,PowerPoint中启用选项卡式编辑和阅读,发布者,Access,Visio和Project。
在同一窗口的新选项卡中而不是在新窗口中打开并创建多个文档。
每天将您的工作效率提高50%,并减少数百次鼠标单击!