سلام،
هم می تونید از FSO استفاده کنید (File System Object) و هم می تونید از تابع Dir استفاده کنید.
برای استفاده از تابع Dir به شکل زیر عمل کنید:
Dim myPath As String, fName As String
myPath = "C:\"
fName = Dir(myPath, vbDirectory)
Do While fName <> ""
If (GetAttr(myPath & fName) And vbDirectory) = vbDirectory Then List1.AddItem fName
fName = Dir()
Loop
گرچه به تابع Dir پارامتر vbDirectory داده ایم اما باز هم نیاز هست تا با تابع GetAttr خصوصیات آن را بررسی کنیم تا مطمئن شویم که این یک فولدر هست. خروجی GetAttr رو هم باز با ثابت vbDirectory که عدد 16 هست And منطقی می کنیم تا همه نوع پوشه (Hidden, ReadOnly, ...) رو هم شامل بشه. اگر این کارو نکنید فقط پوشه های Normal که مقدارشون برابر 16 هست رو جدا میکنه.
موفق باشید/