كيفية إعادة تسمية جميع ملفات الصور في مجلد بناءً على قائمة الخلايا في Excel؟
هل سبق أن احتجت إلى إعادة تسمية عدة صور في مجلد بناءً على قائمة أسماء في ورقة عمل Excel؟ إعادة تسميتها واحدة تلو الأخرى يمكن أن تكون مرهقة وتستغرق وقتًا طويلاً، ولكن بمساعدة أكواد VBA، يمكنك أتمتة العملية بسرعة.
إعادة تسمية جميع ملفات الصور في مجلد
إعادة تسمية جميع ملفات الصور في مجلد
لإعادة تسمية جميع ملفات الصور في مجلد محدد، اتبع الخطوات التالية:
الخطوة 1: استيراد أسماء الملفات الأصلية من المجلد إلى ورقة في Excel
1. اضغط على مفتاحي "Alt + F11" لتفعيل نافذة "Microsoft Visual Basic for Applications".
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. انقر على "موافق" واختر المجلد المحدد الذي تحتاج إلى سرد أسماء الصور فيه في ورقة العمل الحالية. شاهد لقطة الشاشة:
5. انقر على "موافق". تم سرد أسماء الصور على الورقة النشطة.
الخطوة 2: إعادة تسمية ملفات الصور بناءً على قائمة أسماء جديدة
1. اضغط على مفتاحي "Alt + F11" لتفعيل نافذة "Microsoft Visual Basic for Applications".
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. انقر على "موافق"، واختر الأسماء الجديدة التي تريد استبدال أسماء الصور بها في مربع الحوار الثاني. شاهد لقطة الشاشة:
5. انقر على "موافق"، سيظهر مربع حوار لتذكيرك بأن أسماء الصور قد تم استبدالها بنجاح.
6. انقر على "موافق"، وسيتم استبدال أسماء الصور في المجلد بالأسماء الجديدة من الخلايا في الورقة.
![]() |
![]() |
![]() |
مقالات ذات صلة:
أفضل أدوات الإنتاجية لمكتب العمل
عزز مهاراتك في Excel مع Kutools لـ Excel، واختبر الكفاءة كما لم يحدث من قبل. Kutools لـ Excel يقدم أكثر من300 ميزة متقدمة لزيادة الإنتاجية وتوفير وقت الحفظ. انقر هنا للحصول على الميزة التي تحتاجها أكثر...
Office Tab يقدم واجهة التبويب لـ Office، ويجعل عملك أسهل بكثير
- تمكين تحرير وقراءة المستندات عبر التبويبات في Word وExcel وPowerPoint.
- افتح وأنشئ عدة مستندات في تبويبات جديدة ضمن نفس النافذة، بدلاً من فتحها في نوافذ منفصلة.
- يزيد إنتاجيتك بنسبة50%، ويقلل مئات النقرات بالماوس يومياً!