Skip to main content

Excel'de tüm klasörleri ve alt klasörleri nasıl listelersiniz?

Author: Xiaoyang Last Modified: 2025-08-07

Dizin veya dosya yönetimi görevleriyle çalışırken, belirli bir dizindeki tüm klasörlerin ve alt klasörlerin kapsamlı bir listesini hızlıca almanız ve bu bilgileri doğrudan Excel'de görüntülemeniz gerekebilir. Ne yazık ki, Excel, belirlenen bir klasör yolundaki tüm klasör veya alt klasör adlarını otomatik olarak almak için yerleşik bir işlev veya basit bir sihirbaz sağlamaz. Bu makale, seçilen herhangi bir dizinden tüm klasörleri ve alt klasörleri çalışma sayfanıza listelemenize olanak tanıyan VBA kodunu tanıtmaktadır. Bu yöntem, insan hatası riskini azaltır ve yorucu işlemleri ortadan kaldırarak veri organizasyonunuzu hızlıca takip etmenize ve yönetmenize yardımcı olur.

Tüm klasörleri ve alt klasörleri listelemek için VBA kodu kullanın


Tüm klasörleri ve alt klasörleri listelemek için VBA kodu kullanın

Belirli bir dizinden tüm klasör ve alt klasör adlarını çıkarmak ve Excel'e görüntülemek istiyorsanız, VBA (Visual Basic for Applications) kullanmak etkili bir çözümdür. Bu yaklaşım esneklik ve kontrol sağlar; yalnızca klasör adlarını değil, aynı zamanda klasör yolları, oluşturma tarihleri ve son değiştirilme tarihleri gibi ek bilgileri de elde etmenizi sağlar. Bu yöntem, özellikle Excel'in Geliştirici özelliklerini rahatça kullanan ve dinamik veya sık değişen dosya sistemleriyle uğraşan kullanıcılar için uygundur.

1. Çalışma kitabınızdaki makroları eklemek ve düzenlemek için "Microsoft Visual Basic for Applications" düzenleyicisini açmak üzere ALT + F11 tuşlarına basın.

2. VBA düzenleyicisinde, Ekle > Modül'ü tıklayın. Bu, yeni bir modül penceresi oluşturacaktır. Aşağıdaki kodu modüle kopyalayıp yapıştırın:

VBA kodu: Tüm klasörleri ve alt klasörleri listele

Sub FolderNames()
'Updateby Extendoffice
Application.ScreenUpdating = False
Dim xPath As String
Dim xWs As Worksheet
Dim fso As Object, j As Long, folder1 As Object
With Application.FileDialog(msoFileDialogFolderPicker)
    .Title = "Choose the folder"
    .Show
End With
On Error Resume Next
xPath = Application.FileDialog(msoFileDialogFolderPicker).SelectedItems(1) & "\"
Application.Workbooks.Add
Set xWs = Application.ActiveSheet
xWs.Cells(1, 1).Value = xPath
xWs.Cells(2, 1).Resize(1, 5).Value = Array("Path", "Dir", "Name", "Date Created", "Date Last Modified")
Set fso = CreateObject("Scripting.FileSystemObject")
Set folder1 = fso.getFolder(xPath)
getSubFolder folder1
xWs.Cells(2, 1).Resize(1, 5).Interior.Color = 65535
xWs.Cells(2, 1).Resize(1, 5).EntireColumn.AutoFit
Application.ScreenUpdating = True
End Sub
Sub getSubFolder(ByRef prntfld As Object)
Dim SubFolder As Object
Dim subfld As Object
Dim xRow As Long
For Each SubFolder In prntfld.SubFolders
    xRow = Range("A1").End(xlDown).Row + 1
    Cells(xRow, 1).Resize(1, 5).Value = Array(SubFolder.Path, Left(SubFolder.Path, InStrRev(SubFolder.Path, "\")), SubFolder.Name, SubFolder.DateCreated, SubFolder.DateLastModified)
Next SubFolder
For Each subfld In prntfld.SubFolders
    getSubFolder subfld
Next subfld
End Sub

3. Kodu ekledikten sonra, makroyu çalıştırmak için F5 tuşuna basın veya VBA düzenleyicisindeki Çalıştır düğmesine tıklayın. Bir Klasör Seç iletişim kutusu açılacak ve sizden klasörleri ve alt klasörleri tarayacağınız hedef dizini seçmenizi isteyecektir.

vba code to select folder name

4. İstenen dizini seçin ve Tamam'a tıklayın. Makro, dizini işleyecek ve aşağıda gösterildiği gibi tüm klasörleri ve alt klasörleri, tam yollarını, doğrudan üst dizinlerini, adlarını, oluşturma tarihlerini ve son değiştirilme tarihlerini içeren yeni bir çalışma kitabı oluşturacaktır.

all folder names are listed in Excel

Bu kodu kullanma ile ilgili bazı pratik ipuçları ve notlar:

  • Dizin yapınız çok büyükse, makro, tüm klasörleri işlemek için biraz zaman alabilir. Lütfen yürütme sırasında sabırlı olun ve süreci kesintiye uğratmaktan kaçının.
  • VBA yöntemi, makro ayarlarınızın etkin olmasını gerektirir; aksi takdirde kod düzgün çalışmayacaktır. Güvenlik uyarılarıyla karşılaşırsanız, Excel Seçenekleri altında Güven Merkezi ayarlarınızı kontrol edin.
  • Yanlış klasörü seçerseniz, makroyu yeniden çalıştırın ve doğru dizini seçin.
  • Bu yaklaşım yalnızca klasör ve alt klasör bilgilerini listeler; dosyaları da listelemeniz gerekiyorsa, daha fazla seçenek için aşağıdaki ilgili makaleye bakın.
  • Birden fazla kullanıcı çalışma kitabını paylaşıyorsa, onlara bu dinamik liste oluşturma özelliğini kullanmak için kendi bilgisayarlarında makroların etkinleştirilmesi gerektiğini hatırlatın.
  • Oluşturulan çalışma kitabı boş veya eksikse, seçilen dizinin boş olmadığından ve yeterli okuma izniniz olduğundan emin olun. Özellikle derin veya karmaşık klasör ağaçları için, sisteminizin kaynak sınırlarını gözden geçirin ve gerekirse işlemi toplu olarak veya alt dizinler halinde gerçekleştirin.

Bu VBA çözümü esnektir, ek eklentiler veya harici yazılımlar gerektirmez ve size kolaylık sağlamak için otomatik olarak bir çıktı çalışma kitabı oluşturur. Ancak, temel makro işlemlerine aşina olan kullanıcılar için en uygunudur ve belirli özelleştirmeler için ek düzenlemeler yapılmasını gerektirebilir.


İlgili makale:

Excel'de bir dizindeki dosyaları çalışma sayfasına nasıl listelersiniz?

En İyi Ofis Verimlilik Araçları

🤖 Kutools AI Asistanı: Veriye dayalı analizi devrimsel olarak değiştirin: Akıllı Yürütme |Kod Oluştur |Özel Formüller Oluştur |Verileri Analiz Edin ve Grafikler Oluşturun |Geliştirilmiş İşlevler’i çağırın
Popüler Özellikler: Yinelenenleri Bul, Vurgula veya İşaretle | Boş Satırları Sil | Sütunları veya Hücreleri Verileri Kaybetmeden Birleştir | Formül Olmadan Yuvarla...
Süper ARA: Çoklu Kriter VLookup | Çoklu Değer VLookup | Çoklu sayfa araması | Bulanık Eşleme....
Gelişmiş Açılır Liste: Hızlıca Açılır Liste Oluşturun | Bağımlı Açılır Liste | Çoklu Seçimli Açılır Liste....
Sütun Yöneticisi: Belirli Sayıda Sütun Ekle | Sütunları Taşı | Gizli Sütunların Görünürlük Durumunu Değiştir | Aralıkları & Sütunları Karşılaştır...
Özel Seçilen Özellikler: Izgara Odaklama | Tasarım Görünümü | Gelişmiş formül çubuğu | Çalışma Kitabı & Çalışma Sayfası Yöneticisi | Otomatik Metin Kütüphanesi | Tarih Seçici | Veri Birleştir | Hücreleri Şifrele/Şifre Çöz | Listeye Göre E-posta Gönder | Süper Filtre | Özel Filtre (kalın/italik/üstü çizili filtreleme...)...
En Gözde15 Araç Seti:12 Metin Aracı (Metin Ekle, Belirli Karakterleri Sil, ...) | 50+ Grafik Türü (Gantt Grafiği, ...) | 40+ Pratik Formül (Doğum tarihine dayanarak yaş hesapla, ...) | 19 Ekleme Aracı (QR Kodu Ekle, Yoldan Resim Ekle, ...) | 12 Dönüşüm Aracı (Kelimeye Dönüştür, Para Birimi Dönüştürme, ...) | 7 Birleştir & Böl Araçları (Gelişmiş Satırları Birleştir, Hücreleri Böl, ...) | ... ve daha fazlası
Kutools’u tercih ettiğiniz dilde kullanın – İngilizce, İspanyolca, Almanca, Fransızca, Çince ve40’tan fazla başka dili destekler!

Kutools for Excel ile Excel becerilerinizi güçlendirin, daha önce hiç yaşamadığınız bir verimlilik deneyimini yaşayın. Kutools for Excel, üretkenliğinizi artıracak ve zamanı kaydetmenizi sağlayacak300’den fazla gelişmiş özellik sunar. En çok ihtiyaç duyduğunuz özelliği almak için buraya tıklayın...


Office Tab, Office’e sekmeli arayüz kazandırır ve işinizi çok daha kolaylaştırır

  • Word, Excel, PowerPoint’te sekmeli düzenleme ve okuma işlevini etkinleştirin.
  • Aynı pencere içerisinde yeni sekmelerde birden fazla belge açın veya oluşturun, yeni pencerelerde açmak yerine.
  • Verimliliğinizi %50 artırın, her gün yüzlerce fare tıklamasını sizin için azaltın!