Masaüstü Klasör İçeriğini Listele - Microsoft Excel


Bir klasör içerisindeki dosyaları ve klasörleri A sütununda listeletmek için kullanılabilecek alternatif bir excel vba kodunu görelim.

Kod


Option Explicit

Sub KlasorIceriginiListele()
    Dim klasor As String
    Dim icerik As String
    Dim i      As Integer
    Dim nesne  As Object
    
    Set nesne = CreateObject("WScript.Shell").SpecialFolders
    klasor = nesne("desktop")
    icerik = Dir(klasor & Application.PathSeparator & "*.*", vbDirectory)
    
    Do While icerik <> ""
        Cells(i + 1, 1) = icerik
        i = i + 1
        icerik = Dir
    Loop
End Sub

Kod (Açıklamalı)


Option Explicit

Sub KlasorIceriginiListele()
    
    '--------------------------------------------------
    'Listeleme yapılacak klasörün
    'tam yolunu bu değişkene atayacağız.
    '--------------------------------------------------
    Dim klasor As String
    
    '--------------------------------------------------
    'Klasörün içindeki her bir dosyayı ve
    'klasörün yolunu atayacağımız değişken.
    '--------------------------------------------------
    Dim icerik As String
    
    '--------------------------------------------------
    'Hücre seçimi için döngüde
    'işimize yarayacak.
    '--------------------------------------------------
    Dim i As Integer
    
    '--------------------------------------------------
    'Kodun başka bilgisayarlarda da
    'direkt olarak çalışması için
    'özel klasör (bu örnekte Desktop)
    'kullanmak için nesne oluşturduk.
    '
    'Zaten siz klasor değişkenine
    'istediğiniz klasörün tam yolunu
    'gireceğinizden sıkıntı yok.
    '--------------------------------------------------
    Dim nesne As Object
    
    '--------------------------------------------------
    'Desktop klasörünün dinamik olarak seçilmesi için
    'ilk olarak nesne ayarlama işlemini yaptık.
    '--------------------------------------------------
    Set nesne = CreateObject("WScript.Shell").SpecialFolders
    
    '--------------------------------------------------
    'Desktop dinamik yolunu klasor değişkenine atadık.
    '--------------------------------------------------
    klasor = nesne("desktop")
    
    '--------------------------------------------------
    'Klasör içeriğini komple aldık.
    '--------------------------------------------------
    icerik = Dir(klasor & Application.PathSeparator & "*.*", vbDirectory)
    
    '--------------------------------------------------
    'Döngü kullanarak her bir dosya ve klasör
    'ismini ayrı satırlara yazdırıyoruz.
    '--------------------------------------------------
    Do While icerik <> ""
        Cells(i + 1, 1) = icerik
        i = i + 1
        icerik = Dir
    Loop
End Sub

Etiketler
microsoft excel açıklamalı içerik microsoft excel vba