Klasör içindeki dosya isimleri alan macro hk..

Katılım
21 Temmuz 2006
Mesajlar
322
Altın Üyelik Bitiş Tarihi
09-02-2024
Arkadaşlar Merhaba,
Benim masaüstümde “sonuc” adında bir klasörüm var.
Bu dosya içinde;
Ahmet.jpg
Veli.doc
Selen.txt
.
.
Vs..
Şeklinde dosyalarım var. Buna nasıl bir macro yazmalıyım ki burdaki dosya isimlerinin adını excele yazsın.
Yani;
Ahmet
Veli
Selen
Gibi exceldeki hücrelere yazsın.
Şimdiden çok çok teşekkürler.
 
Katılım
21 Temmuz 2006
Mesajlar
322
Altın Üyelik Bitiş Tarihi
09-02-2024
Merhaba Hamitcan,

Dosyadaki kodları inceledim , fakat benim istediğim şekilde olan yok.

Tekrar yardım rica edicem.

Sayg.
 

Orion1

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

Ofis-2010-TR 32 Bit
Buyurun.:cool:
Kod:
Sub dosyalar59()
Dim dosya As String, yol As String, sat As Long
yol = CreateObject("wscript.shell").specialfolders(10)
dosya = Dir(yol & "\sonuc\*.*")
sat = 1
Range("A:A").ClearContents
Do While dosya <> ""
    Cells(sat, "A").Value = dosya
    sat = sat + 1
    dosya = Dir
Loop
MsgBox "Dosyalar A sütununa aktarıldı." & vbLf & "evrengizlen@hotmail.com", vbOKOnly _
    + vbInformation, Application.UserName
End Sub
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,060
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
Anladığım kadarıyla dosya isimlerini uzantısız istiyorsunuz. Aşağıdaki kodu deneyin.

Kod:
Sub dosya_isimleri()
yol = CreateObject("wscript.shell").specialfolders(10) & "\sonuc"
Set nesne = CreateObject("Scripting.FileSystemObject")
Set klasor = nesne.GetFolder(yol)
Set dosyalar = klasor.Files
For Each dosya In dosyalar
c = c + 1
Cells(c, "a") = Replace(dosya.Name, "." & nesne.GetExtensionName(dosya.Name), "")
Next
End Sub
 
Katılım
21 Temmuz 2006
Mesajlar
322
Altın Üyelik Bitiş Tarihi
09-02-2024
Yani her iki kod da mükemmel olmuş.

Emeğinize ve elinize sağlık arkadaşlar.

İyiki varsınız.

Saygı ve Sevgilerimle.
 
Katılım
7 Ocak 2012
Mesajlar
24
Excel Vers. ve Dili
2003-2007
Harikasınız arkadaslar kac gundur cozum arıyordum.emeğinize sağlık,bosuna demiyorum bu excell de dogru soruyu buldun mu sorun cozulur.kolay gelsın.
 
Katılım
11 Aralık 2009
Mesajlar
111
Excel Vers. ve Dili
xxx
levent hocam benim kodlarla aram iyi değil.. son yazdığınız kodda "sonuc" yazan yere klasör ismimi getireceğiz. veya klasör d sürücüsünün içinde ise ? pc de her hangi bir yerden dosya ismini yazınca kodlar onu bulabiliyormu?
 
Katılım
11 Aralık 2009
Mesajlar
111
Excel Vers. ve Dili
xxx
boş bir excel dosyası açıp alt + f11 yapın. sol frame'de ThisWorkbook'a tıklayın, aşağıdaki kodu kopyalayıp yapıştırın. kodun 3. satırındaki "C:\" adresini klasör isimlerini almasını istediğiniz adres ile düzeltin ("d:\murty\dosyalar" gibi). excel dosyasına dönün alt + f8 yapıp makroyu çalıştırın.

Sub Klasor_altklasor_listesi()
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder("C:\")
Set colSubfolders = objFolder.SubFolders
For Each objSubfolder In colSubfolders
c = c + 1
Cells(c, "a") = objSubfolder.Name
Next
End Sub


arkadaşlar bi el atın :( bu kodlama netten buldum yaptım fakat klasör ismini alıyor. ben klasörün içindeki pdf.tif.ve jpeg tarayıcıdan geçmiş evrakların isimlerini almak isityorum yapamadım ya saç baş yolcam şimdi...
 

halit3

Uzman
Uzman
Katılım
18 Ocak 2008
Mesajlar
12,862
Excel Vers. ve Dili
2003 excell türkçe
ve
2007 excell türkçe
boş bir excel dosyası açıp alt + f11 yapın. sol frame'de ThisWorkbook'a tıklayın, aşağıdaki kodu kopyalayıp yapıştırın. kodun 3. satırındaki "C:\" adresini klasör isimlerini almasını istediğiniz adres ile düzeltin ("d:\murty\dosyalar" gibi). excel dosyasına dönün alt + f8 yapıp makroyu çalıştırın.

Sub Klasor_altklasor_listesi()
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder("C:\")
Set colSubfolders = objFolder.SubFolders
For Each objSubfolder In colSubfolders
c = c + 1
Cells(c, "a") = objSubfolder.Name
Next
End Sub


arkadaşlar bi el atın :( bu kodlama netten buldum yaptım fakat klasör ismini alıyor. ben klasörün içindeki pdf.tif.ve jpeg tarayıcıdan geçmiş evrakların isimlerini almak isityorum yapamadım ya saç baş yolcam şimdi...
Alternatif olarak aşağıdaki linki irdeleyiniz.
http://www.excel.web.tr/f133/arama-motoru-excelde-dosyalary-bulma-t83975.html
 

Levent Menteşoğlu

Administrator
Yönetici
Admin
Katılım
13 Ekim 2004
Mesajlar
16,060
Excel Vers. ve Dili
Excel 2010-32 bit-Türkçe
Excel 365 -32 bit-Türkçe
levent hocam benim kodlarla aram iyi değil.. son yazdığınız kodda "sonuc" yazan yere klasör ismimi getireceğiz. veya klasör d sürücüsünün içinde ise ? pc de her hangi bir yerden dosya ismini yazınca kodlar onu bulabiliyormu?
Seçtiğiniz klasöre göre listeleme isterseniz aşağıdaki gibi kullanabilirsiniz.

Kod:
Sub dosya_isimleri()
Set klasorsec = CreateObject("Shell.Application").BrowseForFolder(0, "Lütfen bir klasör seçin !", &H100)
yol = klasorsec.Items.Item.Path
Set nesne = CreateObject("Scripting.FileSystemObject")
Set klasor = nesne.GetFolder(yol)
Set dosyalar = klasor.Files
For Each dosya In dosyalar
c = c + 1
Cells(c, "a") = Replace(dosya.Name, "." & nesne.GetExtensionName(dosya.Name), "")
Next
End Sub
Eğer dosya uzantılarınıda görmek isterseniz. İlgili satırı aşağıdaki ile değiştirin.

Kod:
Cells(c, "a") = dosya.Name
 
Katılım
6 Şubat 2009
Mesajlar
5
Excel Vers. ve Dili
2016 Türkçe
Çok teşekkür ederim :D








Seçtiğiniz klasöre göre listeleme isterseniz aşağıdaki gibi kullanabilirsiniz.

Kod:
Sub dosya_isimleri()
Set klasorsec = CreateObject("Shell.Application").BrowseForFolder(0, "Lütfen bir klasör seçin !", &H100)
yol = klasorsec.Items.Item.Path
Set nesne = CreateObject("Scripting.FileSystemObject")
Set klasor = nesne.GetFolder(yol)
Set dosyalar = klasor.Files
For Each dosya In dosyalar
c = c + 1
Cells(c, "a") = Replace(dosya.Name, "." & nesne.GetExtensionName(dosya.Name), "")
Next
End Sub
Eğer dosya uzantılarınıda görmek isterseniz. İlgili satırı aşağıdaki ile değiştirin.

Kod:
Cells(c, "a") = dosya.Name
 
Katılım
10 Mayıs 2015
Mesajlar
2
Excel Vers. ve Dili
2013 TR
Buyurun.:cool:
Kod:
Sub dosyalar59()
Dim dosya As String, yol As String, sat As Long
yol = CreateObject("wscript.shell").specialfolders(10)
dosya = Dir(yol & "\sonuc\*.*")
sat = 1
Range("A:A").ClearContents
Do While dosya <> ""
    Cells(sat, "A").Value = dosya
    sat = sat + 1
    dosya = Dir
Loop
MsgBox "Dosyalar A sütununa aktarıldı." & vbLf & "evrengizlen@hotmail.com", vbOKOnly _
    + vbInformation, Application.UserName
End Sub
Öncelikle çok faydalı paylaşım teşekkürler. Fakat ben daha önce makro hiç kullanmadım. Burada tam olarak içindeki dosya isimlerini istediğimiz klasörün yolunu nasıl gireceğiz ve bu işlemi nasıl başlatacağız ? Bu bilgileri söylerseniz sevinirim.
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,405
Excel Vers. ve Dili
2007 Türkçe
Öncelikle çok faydalı paylaşım teşekkürler. Fakat ben daha önce makro hiç kullanmadım. Burada tam olarak içindeki dosya isimlerini istediğimiz klasörün yolunu nasıl gireceğiz ve bu işlemi nasıl başlatacağız ? Bu bilgileri söylerseniz sevinirim.
Klasör seçerek işlem yapmak istiyorsanız 11. mesajdaki kodu kullanınız.
Kodu nasıl kullanacağınızı da aşağıdaki linkten ve orada verilen linklerden öğrenebilirsiniz.
Kod Yazmayı Öğreniyorum
 
Katılım
10 Mayıs 2015
Mesajlar
2
Excel Vers. ve Dili
2013 TR
Klasör seçerek işlem yapmak istiyorsanız 11. mesajdaki kodu kullanınız.
Kodu nasıl kullanacağınızı da aşağıdaki linkten ve orada verilen linklerden öğrenebilirsiniz.
Kod Yazmayı Öğreniyorum
Yanıtınız için teşekkürler. 11. mesajdaki kodda dosya isimlerini listelemek istediğim klasör yolunu hangi şekilde kodun neresine ekleyeceğimi söylerseniz sevinirim.
 

ÖmerBey

Destek Ekibi
Destek Ekibi
Katılım
22 Ekim 2012
Mesajlar
4,405
Excel Vers. ve Dili
2007 Türkçe
Böyle bir ekleme yapmanıza gerek yok.
Kodu çalıştırdığınız zaman açılan pencereden klasörü seçebilirsiniz.
 
Katılım
29 Ekim 2010
Mesajlar
365
Excel Vers. ve Dili
Microsoft Office 365 ProPlus 64 bit
Altın Üyelik Bitiş Tarihi
31-05-2024
merhabalar ,

kodu kullanıyorum fakat şöyle bir sıkıntım mevcut benim bazı klasör dosyalarım ağ'da ,ağ'da olduğu için klasör olarak göstermiyor.


kodu ağ'da klasör içinde dosya adı bulunacak şekilde güncelleyebil meniz mümkün müdür ?

Kod:
Sub dosya_isimleri()
Set klasorsec = CreateObject("Shell.Application").BrowseForFolder(0, "Lütfen bir klasör seçin !", &H100)
yol = klasorsec.Items.Item.Path
Set nesne = CreateObject("Scripting.FileSystemObject")
Set klasor = nesne.GetFolder(yol)
Set dosyalar = klasor.Files
For Each dosya In dosyalar
c = c + 1
Cells(c, "a") = Replace(dosya.Name, "." & nesne.GetExtensionName(dosya.Name), "")
Next
End Sub
 
Son düzenleme:
Katılım
1 Nisan 2014
Mesajlar
2
Excel Vers. ve Dili
2010
boş bir excel dosyası açıp alt + f11 yapın. sol frame'de ThisWorkbook'a tıklayın, aşağıdaki kodu kopyalayıp yapıştırın. kodun 3. satırındaki "C:\" adresini klasör isimlerini almasını istediğiniz adres ile düzeltin ("d:\murty\dosyalar" gibi). excel dosyasına dönün alt + f8 yapıp makroyu çalıştırın.

Sub Klasor_altklasor_listesi()
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder("C:\")
Set colSubfolders = objFolder.SubFolders
For Each objSubfolder In colSubfolders
c = c + 1
Cells(c, "a") = objSubfolder.Name
Next
End Sub


arkadaşlar bi el atın :( bu kodlama netten buldum yaptım fakat klasör ismini alıyor. ben klasörün içindeki pdf.tif.ve jpeg tarayıcıdan geçmiş evrakların isimlerini almak isityorum yapamadım ya saç baş yolcam şimdi...


vallahi ben yaptım şeker gibi oldu. her kim yazdıysa bu kodu ve nasıl yapılacağını çok teşekkürler. zira ilk defa alt+F11 yapıp kod sayfası gördüm tekrar teşekkürler
 
Üst