Рекурсивные прерывания цикла - в чем причина? - PullRequest
0 голосов
/ 08 января 2019

Цикл во всех подпапках прерывается в невидимых позициях. VBA не выдает никаких сообщений об ошибках. Файл, обрабатываемый в тот момент, когда код останавливается, время от времени отличается.

Открываемые файлы являются необработанными, не ascii файлами. Excel может конвертировать их в CSV-файлы для дальнейшей пакетной обработки. Я пробовал оба следующих цикла с одинаковым результатом: 1. Прокрутка всех подпапок с использованием VBA 2. Прокрутка подпапок и файлов в указанном пользователем корневом каталоге

Sub LoopFolders()
    Dim FileSystem As Object
    Dim HostFolder As String

    HostFolder = "c:\abc\Donnees_de_production\"

    Set FileSystem = CreateObject("Scripting.FileSystemObject")
    Application.ScreenUpdating = False          ' Deactivate Screenupdating
    DoFolder FileSystem.GetFolder(HostFolder)
    Application.ScreenUpdating = True
End Sub


Sub DoFolder(Folder)
    Dim SubFolder As Object
    For Each SubFolder In Folder.SubFolders
        DoFolder SubFolder
    Next
    Dim File As Object
    For Each File In Folder.Files
        ' Operate on each file
        Workbooks.Open FileName:=File.Path
        ' MsgBox File.Path & ".csv"
        ActiveWorkbook.SaveAs FileName:=File.Path & ".csv", FileFormat:=xlCSV
        ActiveWorkbook.Close
    Next
End Sub

У меня есть около 6500 файлов для преобразования в CSV. Примерно через 1200 казнь прекращается. Я понятия не имею, почему.

Я высоко ценю любую помощь или идеи! Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...