• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

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

Katılım
21 Temmuz 2006
Mesajlar
322
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.
 
Merhaba Hamitcan,

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

Tekrar yardım rica edicem.

Sayg.
 
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
 
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
 
Yani her iki kod da mükemmel olmuş.

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

İyiki varsınız.

Saygı ve Sevgilerimle.
 
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.
 
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?
 
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...
 
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 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
 
Ç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
 
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.
 
Ö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
 
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.
 
Böyle bir ekleme yapmanıza gerek yok.
Kodu çalıştırdığınız zaman açılan pencereden klasörü seçebilirsiniz.
 
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:
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
 
Geri
Üst