Bu dosya, A1 hücresine yazdığınız klasör yolundaki tüm alt klasörleri ve dosyaları Excel sayfasında hiyerarşik olarak listeler. Her dosya adı tıklanabilir bir bağlantı olarak yazılır, böylece dosyayı doğrudan listeden açabilirsiniz.
Dosya makro içerir, açarken makroları etkinleştirmeniz gerekir.
Dosya makro içerir, açarken makroları etkinleştirmeniz gerekir.
Dosyanın içeriği
Dosyada tek sayfa vardır: Sayfa1 (A1:H3988 aralığı).- A1 hücresi taranacak klasör yolunu tutar. Örnekte
F:\Excel-Arsivi-Yeniyazılıdır. - B sütununda alt klasör adları görünür (örneğin GENEL-EXCEL, FONKSIYONLAR).
- C sütununda ilgili klasörün içindeki dosya adları bağlantı olarak listelenir (örneğin sutun-degistir.xls, tahmin-formulu.xls).
- Örnek listede yaklaşık 3.000 bağlantı bulunur.
Kullanılan formüller
- KÖPRÜ (HYPERLINK): Dosyada 2971 adet kullanılmıştır. Klasör adı hücrelerinde ve dosya adı hücrelerinde, ilk argüman dosyanın tam yolunu, ikinci argüman görünen adı verir. Örnek:
=HYPERLINK("F:\Excel-Arsivi-Yeni\FONKSIYONLAR\tahmin-formulu.xls","tahmin-formulu.xls")
Makrolar
Dosyada Module1 modülü vardır ve dört yordam içerir.- ListFileTree: Ana makrodur. Sayaçları sıfırlar ve A1 hücresindeki yolu RecurseFolderList yordamına verir.
- RecurseFolderList: FileSystemObject ile klasörü okur. Alt klasörleri bir sütun içeriden, dosyaları da bulundukları klasörün sağındaki sütuna KÖPRÜ (HYPERLINK) formülüyle yazar. Alt klasörler için kendini tekrar çağırır, yani tüm iç içe klasörleri tarar. Klasör yoksa işlem yapmadan çıkar.
- GetFilenameFromPath: Tam yoldan yalnızca dosya veya klasör adını ayıklar.
- ClearFormatting: İçinde alt klasör bulunan klasör hücresinin bağlantı biçimini (renk, altı çizgi) kaldırır ve formülü değere çevirir.
Nasıl kullanılır
- Dosyayı açın ve makroları etkinleştirin.
- A1 hücresine listelemek istediğiniz klasörün yolunu yazın.
- Alt+F8 tuşlarıyla makro penceresini açın, ListFileTree makrosunu seçip Çalıştır'a basın.
- Liste A2 hücresinden başlayarak oluşur. Dosya adlarına tıklayarak ilgili dosyayı açabilirsiniz.
- Yeni bir listeleme yapmadan önce eski listeyi temizlemeniz önerilir.