Однако мой первоначальный подход к получению подкаталогов не удался.Он просто показывает все, включая файлы:
sDir = Dir(sPath, vbDirectory)
Do Until LenB(sDir) = 0
Debug.Print sDir
sDir = Dir
Loop
Список начинается с '..' и нескольких папок и заканчивается файлами '.txt'.
РЕДАКТИРОВАТЬ:
Я должен добавить, что это должно работать в Word, а не в Excel (многие функции недоступны в Word), и это Office 2010.
РЕДАКТИРОВАТЬ 2:
Можно определить тип результат с использованием
iAtt = GetAttr(sPath & sDir)
If CBool(iAtt And vbDirectory) Then
...
End If
Но это доставило мне новые проблемы, так что теперь я использую код, основанный на Scripting.FileSystemObject
.