จะเปลี่ยนชื่อไฟล์รูปภาพทั้งหมดในโฟลเดอร์ตามรายการเซลล์ใน Excel ได้อย่างไร
คุณเคยจำเป็นต้องเปลี่ยนชื่อรูปภาพหลายภาพในโฟลเดอร์ตามรายชื่อในแผ่นงาน Excel หรือไม่ การเปลี่ยนชื่อทีละภาพอาจใช้เวลานาน แต่ด้วยความช่วยเหลือของโค้ด VBA คุณสามารถทำให้กระบวนการนี้เป็นอัตโนมัติได้อย่างรวดเร็ว
เปลี่ยนชื่อไฟล์รูปภาพทั้งหมดในโฟลเดอร์
เปลี่ยนชื่อไฟล์รูปภาพทั้งหมดในโฟลเดอร์
หากต้องการเปลี่ยนชื่อไฟล์รูปภาพทั้งหมดในโฟลเดอร์ที่ระบุ ให้ทำตามขั้นตอนเหล่านี้:
ขั้นตอนที่ 1: นำเข้าชื่อไฟล์ต้นฉบับจากโฟลเดอร์ไปยังแผ่นงานใน 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. ชื่อรูปภาพแสดงอยู่ในแผ่นงานที่ใช้งานอยู่
ขั้นตอนที่ 2: เปลี่ยนชื่อไฟล์รูปภาพตามรายชื่อใหม่
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 สำหรับ Excel และสัมผัสประสิทธิภาพอย่างที่ไม่เคยมีมาก่อน Kutools สำหรับ Excel เสนอคุณสมบัติขั้นสูงมากกว่า 300 รายการเพื่อเพิ่มประสิทธิภาพและประหยัดเวลา คลิกที่นี่เพื่อรับคุณสมบัติที่คุณต้องการมากที่สุด...
แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก
- เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
- เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
- เพิ่มประสิทธิภาพการทำงานของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!