Toplu olarak dosya isimlerini değiştirme

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,164
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
D:\deneme adlı klasör içerisinde bulunan resim dosyalarının adları A sutununda yazılı, B sutununda yazılı bulunan yeni isimlerle değiştirmek istiyorum. Bunu makro ile nasıl yapabiliriz.
 

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,164
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
Sn. Zeki Gürsoy hocam, dediğiniz gibi formda arama yaptıp ve verdiğiniz linki inceledim, ancak burada a sutununda verilen isimler ile klasör içindeki isimler değişiyor, ancak ben belirlediğim isimlerin hangi isimlerle değiştirileceğini ben belirlemek istiyorum, yani a sutununda yazılı isimler b sutununda yazılı isimlerle değişmesini istemiştim. İlgilenirseniz sevinirim. Saygılar.
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Aşağıdaki kodlar A sütunundaki dosya isimlerini B sütunundaki dosya ismleri ile değiştiri.
Dosyaların D:\Deneme klasörü içinde olduğu varsayılmıştır.
Eğer klasör değişkse ilgili satırda değişkliği yapınız.:cool:
Kod:
Sub isim_degistir()
Dim i As Long, say As Long
If MsgBox("D:\Deneme klasörü içersindeki dosyaların isimleirini değiştirmek istiyormusunuz..!!??", _
vbYesNo + vbQuestion, Application.UserName) = vbno Then Exit Sub
For i = 1 To Cells(65536, "A").End(xlUp).Row
    If Dir("D:\Deneme\" & Cells(i, "A").Value) <> "" Then
        Name ("D:\Deneme\" & Cells(i, "A").Value) As ("D:\Deneme\" & Cells(i, "B").Value)
        say = say + 1
    End If
Next i
MsgBox say & " dosya isimi değiştirildi..", vbOKOnly + vbInformation, Application.UserName
End Sub
 

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,164
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
Sn.Evren Gizlen Kodlar &#231;al&#305;&#351;t&#305;r&#305;ld&#305;&#287;&#305;nda ;
Name ("D:\Deneme\" & Cells(i, "A").Value) As ("D:\Deneme\" & Cells(i, "B").Value)
sat&#305;r&#305;nda Run Time Error '75' &#351;eklinde hata iletisi al&#305;yorum, rica etsem dosyaya uyarlayabilirmisiniz
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Sn.Evren Gizlen Kodlar çalıştırıldığında ;
Name ("D:\Deneme\" & Cells(i, "A").Value) As ("D:\Deneme\" & Cells(i, "B").Value)
satırında Run Time Error '75' şeklinde hata iletisi alıyorum, rica etsem dosyaya uyarlayabilirmisiniz
Kodlar bende gayet güzel çalışıyor.
Sizin dosya adlarında hata vardır.
b sütununa dosya adı ile birlikte uzantısınıda yazmanız gerekiyor.
Örnek tahsin.jpg
Birde dosya adlarında . - , vb, yasak karakterler kullanmışsanızda hata verir.:cool:
 

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,164
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
Hocam örnek dosyamı ekte gönderiyorum

Ne yaptıysam olmadı, o dosya değiştirildi diyor. Örnek dosyamı ekte gönderiyorum, Bakarsanız çok sevinirim. Şimdiden çok teşekkür ederim
 

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,164
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
SN. Evren Gizlen hocam, tamam gerek kalmad&#305;, hem a hem de B sutunundaki dosya isimlerini uzant&#305;lar&#305; ile birlikte yaz&#305;lmas&#305; gerekiyormu&#351;. Bu &#351;ekilde yapt&#305;&#287;&#305;mda oldu, eline koluna sa&#287;l&#305;k &#231;ok te&#351;ekk&#252;r ederim. Sayg&#305;lar
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Ne yaptıysam olmadı, o dosya değiştirildi diyor. Örnek dosyamı ekte gönderiyorum, Bakarsanız çok sevinirim. Şimdiden çok teşekkür ederim
Dediğim gibi dosya uzantıları meselesi.
Şimdi kodları düzenledim.Dosyaların uzantısını yazmadan sadece dosya adlarını yazarak kodlar çalışıyor.
Ama sadece jpg uzantılı dosyalar.
Ekli dosyayı inceleyiniz.:cool:
Kod:
Sub isim_degistir()
Dim i As Long, say As Long
If MsgBox("D:\Deneme klasörü içersindeki dosyaların isimleirini değiştirmek istiyormusunuz..!!??", _
vbYesNo + vbQuestion, Application.UserName) = vbno Then Exit Sub
For i = 2 To Cells(65536, "A").End(xlUp).Row
    If Dir("D:\Deneme\" & Cells(i, "A").Value & ".jpg") <> "" Then
        Name ("D:\Deneme\" & Cells(i, "A").Value & ".jpg") As ("D:\Deneme\" & Cells(i, "B").Value & ".jpg")
        say = say + 1
    End If
Next i
MsgBox say & " dosya isimi değiştirildi..", vbOKOnly + vbInformation, Application.UserName
End Sub
 

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,164
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
Sn. Evren Gizlen hocam, ger&#231;ekten m&#252;kemmel oldu, elinize sa&#287;l&#305;k, umar&#305;m ba&#351;kalar&#305;n&#305;n i&#351;ine de yarar, bence &#231;ok m&#252;kemmel bir kod oldu.

Bu kodlarla da dosya i&#231;erisindeki resim isimlerini listeliyebiliyoruz.
Sub Dosya_&#304;simleri()
Dim ds, dc, f, s
Set ds = CreateObject("Scripting.FileSystemObject")
Set f = ds.GetFolder("D:\Deneme")
Set dc = f.Files
For Each dosya In dc
c = c + 1
Cells(c, 1) = dosya.Name
Next
End Sub

&#199;ok te&#351;ekk&#252;r ediyorum, sayg&#305;lar sunuyorum. Sa&#287;olun
 

Orion1

Uzman
Uzman
Katılım
1 Mart 2005
Mesajlar
22,254
Excel Vers. ve Dili
Win7 Home Basic TR 64 Bit

Ofis-2010-TR 32 Bit
Sn. Evren Gizlen hocam, gerçekten mükemmel oldu, elinize sağlık, umarım başkalarının işine de yarar, bence çok mükemmel bir kod oldu.

Bu kodlarla da dosya içerisindeki resim isimlerini listeliyebiliyoruz.
Sub Dosya_İsimleri()
Dim ds, dc, f, s
Set ds = CreateObject("Scripting.FileSystemObject")
Set f = ds.GetFolder("D:\Deneme")
Set dc = f.Files
For Each dosya In dc
c = c + 1
Cells(c, 1) = dosya.Name
Next
End Sub

Çok teşekkür ediyorum, saygılar sunuyorum. Sağolun
Rica ederim.
Saygılar benden.
iyi çalışmalar.:cool:
 
Katılım
27 Ekim 2011
Mesajlar
13
Excel Vers. ve Dili
office2003
saygı değer hocalarım buradaki kodlar çok güzel ama bu kodlarda ufak bir değişiklik yapma şansımız yok mudur? A ile B arasında değişiklik oluyor bunu A(dosya isimleri), B(değişecek isimler), C(değişecek isimler), D(değişecek isimler) sutunları arasında olsa benim için daha faydalı olacaktır. YARDIMLARINIZI BEKLİYORUM.
 

S.Yiğit

Destek Ekibi
Destek Ekibi
Katılım
1 Temmuz 2008
Mesajlar
1,748
Excel Vers. ve Dili
2019 TR
Hocam merhaba, Kodunuzdan bende faydalandım.. Teşekkür ederim..

Aşağıdaki kodlar A sütunundaki dosya isimlerini B sütunundaki dosya ismleri ile değiştiri.
Dosyaların D:\Deneme klasörü içinde olduğu varsayılmıştır.
Eğer klasör değişkse ilgili satırda değişkliği yapınız.:cool:
Kod:
Sub isim_degistir()
Dim i As Long, say As Long
If MsgBox("D:\Deneme klasörü içersindeki dosyaların isimleirini değiştirmek istiyormusunuz..!!??", _
vbYesNo + vbQuestion, Application.UserName) = vnno Then Exit Sub
For i = 1 To Cells(65536, "A").End(xlUp).Row
    If Dir("D:\Deneme\" & Cells(i, "A").Value) <> "" Then
        Name ("D:\Deneme\" & Cells(i, "A").Value) As ("D:\Deneme\" & Cells(i, "B").Value)
        say = say + 1
    End If
Next i
MsgBox say & " dosya isimi değiştirildi..", vbOKOnly + vbInformation, Application.UserName
End Sub
 
Katılım
9 Nisan 2007
Mesajlar
95
Excel Vers. ve Dili
Exel 2003 Türkçe
Merhaba,

Aşağıdaki kod için teşekkür ederim. Benimde işime yaradı...

Fakat şöyle bir şey yapmak istiyorum. A sütunundaki resim değişiyor. Ben buradaki resmin ismini de B sütununda yazan isme göre değiştirmek istiyorum.

Örneğin A sütununda resmin ismi mahmut.jpg B sütununda da Tc nosu(546879) var. İşlem bittiğinde A sütunundaki resmin adı 546879.jpg olabilir mi?

Teşekkürler...




Dediğim gibi dosya uzantıları meselesi.
Şimdi kodları düzenledim.Dosyaların uzantısını yazmadan sadece dosya adlarını yazarak kodlar çalışıyor.
Ama sadece jpg uzantılı dosyalar.
Ekli dosyayı inceleyiniz.:cool:
Kod:
Sub isim_degistir()
Dim i As Long, say As Long
If MsgBox("D:\Deneme klasörü içersindeki dosyaların isimleirini değiştirmek istiyormusunuz..!!??", _
vbYesNo + vbQuestion, Application.UserName) = vbno Then Exit Sub
For i = 2 To Cells(65536, "A").End(xlUp).Row
    If Dir("D:\Deneme\" & Cells(i, "A").Value & ".jpg") <> "" Then
        Name ("D:\Deneme\" & Cells(i, "A").Value & ".jpg") As ("D:\Deneme\" & Cells(i, "B").Value & ".jpg")
        say = say + 1
    End If
Next i
MsgBox say & " dosya isimi değiştirildi..", vbOKOnly + vbInformation, Application.UserName
End Sub
 
Katılım
9 Nisan 2007
Mesajlar
95
Excel Vers. ve Dili
Exel 2003 Türkçe
Merhaba,

Aşağıdaki kod için teşekkür ederim. Benimde işime yaradı...

Fakat şöyle bir şey yapmak istiyorum. A sütunundaki resim değişiyor. Ben buradaki resmin ismini de B sütununda yazan isme göre değiştirmek istiyorum.

Örneğin A sütununda resmin ismi mahmut.jpg B sütununda da Tc nosu(546879) var. İşlem bittiğinde A sütunundaki resmin adı 546879.jpg olabilir mi?

Teşekkürler...
Güncelllll
 
Katılım
8 Eylül 2015
Mesajlar
71
Excel Vers. ve Dili
2010 - Türkçe
herkese selamlar, kodu kullanamıyorum. yardımcı olabilir misiniz.
dosyalar "C:\Documents and Settings\ceyhun.uysal\Desktop\isimler" klasörünün içinde.
Klasörün içinde hem fotoğraf hem de excel dosyası var.
 
Katılım
8 Eylül 2015
Mesajlar
71
Excel Vers. ve Dili
2010 - Türkçe
Kod kullanılabilmiştir. Sonuna \ işaretini koymadığım için hata veriyormuş. Kodu yazan, konuda emeği geçen herkese teşekkürler.
 
Katılım
31 Aralık 2014
Mesajlar
1,845
Excel Vers. ve Dili
Excel 2010
Merhaba Arkadaşlar

Makroyu da ekledim dosya lokasyonu nu da ayarladım fakat olmadı ne yaptı isem yapamadım bu konuda yardımcı olurmusunuz

http://s3.dosya.tc/server8/cbagjx/resim_adi_degistirme.xls.html
Merhaba
Örnek dosyanızdaki; hücrelerde zaten ".jpg" formatı yazılı olduğu için, kodlardaki fazla olmuş
Aşağıdaki gibi deneyin;
Kırmızı bölümü asıl dosyanızda başlık satırı varsa 2 yapınız
Kod:
Sub isim_degistir()
Dim i As Long, say As Long
If MsgBox("D:\Deneme klasörü içersindeki dosyaların isimleirini değiştirmek istiyormusunuz..!!??", _
vbYesNo + vbQuestion, Application.UserName) = vbNo Then Exit Sub
For i = [COLOR="Red"]1[/COLOR] To Cells(65536, "A").End(xlUp).Row
    If Dir("D:\Deneme\" & Cells(i, "A").Value) <> "" Then
        Name "D:\Deneme\" & Cells(i, "A").Value As "D:\Deneme\" & Cells(i, "B").Value
        say = say + 1
    End If
Next i
MsgBox say & " dosya isimi değiştirildi..", vbOKOnly + vbInformation, Application.UserName
End Sub
 
Üst