• DİKKAT

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

Makro ile bir klasörü içindeki dosya sayısını bir hücreye yazdırmak

  • Konbuyu başlatan Konbuyu başlatan him6666
  • Başlangıç tarihi Başlangıç tarihi
Katılım
4 Ocak 2008
Mesajlar
10
Excel Vers. ve Dili
excel 2002 türkçe
Merhabalar. Acaba belirli bir klasörün içindeki dosyaların sayısını (dosya uzantısı ne olursa olsun) excel tablosunda istediğim bir hücreye yazdırabileceğim bir kod yazabilir misiniz? mesela c:/folder/first klasörünü içindeki dosyalar olsun. bu arada kodu direkt olarak buraya yazabilirseniz sevinirim. yani dosya olarak ekte göndermeyin lütfen.
 
Aşağıdaki linki inceleyiniz.

http://www.excel.web.tr/showthread.php?t=4488

Buradaki
Kod:
Sub Dosya_Sayısı()
Dim ds, dc, f, s
Set ds = CreateObject("Scripting.FileSystemObject")
Set f = ds.GetFolder("C:\SXS")
Set dc = f.Files
s = dc.Count
MsgBox s
End Sub
kodlarını kullanabilirsiniz.
 
Gördüğüm kadarıyla bu kod dosya sayısını sadece bir pencere içinde bilgi olarak veriyor. ben benim belirlediğim bir hücreye yazdırmasını istiyorum bu sayıyı. bu mümkün müdür?
 
Son düzenleme:
Kod:
Sub Dosya_Sayısı()
Dim ds, dc, f, s
Set ds = CreateObject("Scripting.FileSystemObject")
Set f = ds.GetFolder("C:\SXS")
Set dc = f.Files
s = dc.Count
[B]Range("a1").Value = s[/B]
End Sub

olarak deneyin.​
 
peki aynı kodu birden fazla klasör için uygulamamız gerekirse... yani a klasörünün içindeki dosya sayısını a1 hücresine, b klasörünün içindeki dosya sayısını a2 hücresine gibi...
 
tamamdır arkadaşlar sorunu hallettim ama birşey daha kaldı. bu istediğim klasörün içindeki dosyaları istediğim dosya uzantısına göre bulabilir mi
 
A kolonunda klasör yolları olduğunu düşünerek B kolonunda bu klasörlerdeki dosya sayısı bulmak için aşağıdaki kodları deneyiniz.

Kod:
Sub Dosya_Sayısı()
Dim ds, dc, f, s, i, yol
Set ds = CreateObject("Scripting.FileSystemObject")
For i = 2 To [a65536].End(3).Row
yol = Cells(i, "a").Value
Set f = ds.GetFolder(yol)
Set dc = f.Files
s = dc.Count
Cells(i, "b").Value = s
Set dc = Nothing
Set f = Nothing
Next i
Set ds = Nothing
MsgBox "Bitti"
End Sub
 
bu istediğim klasörün içindeki dosyaları istediğim dosya uzantısına göre bulabilir mi
 
Biraz araştırma yaparsanız forumda bununla ilgili birçok örnek çalışma bulabilirsiniz.
 
Geri
Üst