Начиная с elif option == 2:
, вы отступали слишком много раз. В достойном текстовом редакторе вы должны выделить эти строки и нажать Shift + Tab, чтобы исправить проблему.
Кроме того, после for x in range(x, 1, 1):
нет инструкции. Вставьте отступ pass
, чтобы ничего не делать в цикле for
.
Кроме того, в первой строке вы написали option == 1
. ==
для равенства, но вы имели в виду =
(один знак равенства), который присваивает правильное значение для левого имени, то есть
option = 1
Вы можете использовать цикл For Each, как только вы предоставите корневую папку.
Создать экземпляр FileSystemObject
blockquote>Set objFSO = CreateObject("Scripting.FileSystemObject")
Получить объект папки
blockquote>Set objFolder = objFSO.GetFolder("C:\Temp")
проходит через каждую папку в каталоге
blockquote>For Each objSubFolder In objFolder.subfolders **Handle Code Goes Here** Next objSubFolder
Итак, теперь у вас есть каждая подпапка корневой папки, которую вы предоставили (C: \ Temp) в этом случае вы можете сделать что-то подобное, чтобы получить информацию:
String1 = objSubFolder.Path String 2 = objSubFolder.Name