У меня странная проблема с размером диска при использовании команды Dos Dir в Excel VBA.
Я занимаюсь разработкой процедуры, в рамках которой мне нужно получить список каталогов со всеми его подкаталогами. каталоги, на том же компьютере и сохранить его в текстовый файл. Этот кусок кода будет запущен несколько раз по полной программе. Компьютер - это обычный c рабочий стол с Windows 10. Excel работает в C: каталог, который должен быть указан, находится в E: (внутренний диск), а файл сохраняется в root каталог N: (USB-накопитель).
Я работаю в следующем формате: "Dir / s E: \" Имя каталога "\ >> n: \ Edir.txt"
Когда я запускаю это вручную в командной строке он работает отлично, но когда я пытаюсь встроить его в команду «Shell», я обычно получаю сообщение об ошибке на панели командной строки, говорящее «Недостаточно места на диске». и текстовый файл создается, но усекается в произвольной точке списка.
Используемая строка кода: '' 'PID = Shell ("cmd / k Dir / s E: \ Directory Name \> > N: \ Edir.txt ", vbNormalFocus) '' '
Каждый из используемых дисков имеет более 150 ГБ свободного места, а полный текстовый файл имеет размер около 3,3 МБ.
I Это очень сбивает с толку: на каждом из дисков достаточно свободного места, и тот факт, что он работает каждый раз, когда вызывается вручную, а иногда при вызове из команды оболочки, делает его еще более сложным. Есть идеи?
R. Frankham