Aşağıdaki VBA kodu, belirtilen klasördeki tüm resimlerin / dosyaların isimlerini Excel dosyasındaki A stunundan B sütunlarındaki değerlere göre ve resim uzantılarına dikkat etmeden sadece isimleri değiştirecektir:
Sub RenameImages() Dim i As Integer Dim oldName As String Dim newName As String Dim path As String Dim fileExt As String path = "C:\images\" 'klasör yolunu buraya girin For i = 1 To ActiveSheet.UsedRange.Rows.Count oldName = path & Cells(i, 1).Value fileExt = Right(oldName, 4) 'uzantıyı al newName = Replace(oldName, fileExt, "") & Cells(i, 2).Value & fileExt 'uzantıyı yeni ada ekle Name oldName As newName Next i End Sub
Bu kod dosyada herhangi bir uzantı varsa onları alıp yeni isimle birlikte yeniden kaydeder.
Bu kodu Excel dosyasının VBA editorüne girip “Modül” olarak kaydedin. Ardından, bu kodu çalıştırmak için “Makro” sekmesinden “RenameImages” çalıştırın.
Bu kod binlerce satır için de çalışacaktır. Kod, Excel dosyasındaki kullanılan hücre aralığının satır sayısına göre döngü oluşturur ve her satır için eski resim adını, yeni resim adına çevirir. Bu nedenle, Excel dosyasında ne kadar satır olduğu ne olursa olsun, kod her satır için isim değişikliği yapacaktır. Ancak, büyük bir dosyada çalışması için biraz zaman alabilir.
Yorumlar