1

Тема: Запись исполняемого кода

Доброго всем времени суток. Нахожусь в поиске информации о ведении логов исполнения макросов. Интересует возможность записывать выполненные строки кода и возникающие ошибки. Желательно в текстовый файл или в переменные. Может быть есть какие-то функции или библиотеки для подобного?

Спасибо можно перевести на WebMoney-кошелёк R378231864568 или на Яндекс-деньги 410015093172871

2

Re: Запись исполняемого кода

Лог ошибок, возникающих при выполнении макроса можно создать примерно так

Sub err_print()
Dim Msg
    On Error GoTo ErrHandler
'   ......
'   Здесь ваш код
'   ......
'    Err.Raise 6    ' Генерация ошибки "Overflow" .
'    Err.Raise 13   ' Генерация ошибки "Type mismatch".
'    ......
    Exit Sub
'Формируем лог ошибок в окне Immediate
ErrHandler:
    If Err.Number <> 0 Then
        Msg = "Error # " & str(Err.Number) & " was generated by " _
                & Err.Source & vbTab & Err.Description
        Debug.Print Msg, "Error", Err.HelpFile, Err.HelpContext
    End If
    Resume Next

End Sub

3

Re: Запись исполняемого кода

Boris_R пишет:

Лог ошибок, возникающих при выполнении макроса можно создать примерно так

Sub err_print()
Dim Msg
    On Error GoTo ErrHandler
'   ......
'   Здесь ваш код
'   ......
'    Err.Raise 6    ' Генерация ошибки "Overflow" .
'    Err.Raise 13   ' Генерация ошибки "Type mismatch".
'    ......
    Exit Sub
'Формируем лог ошибок в окне Immediate
ErrHandler:
    If Err.Number <> 0 Then
        Msg = "Error # " & str(Err.Number) & " was generated by " _
                & Err.Source & vbTab & Err.Description
        Debug.Print Msg, "Error", Err.HelpFile, Err.HelpContext
    End If
    Resume Next

End Sub

Спасибо, конечно, но про ошибки по " он эррор го ту" и так понятно. Больше интересовала запись выполнения всего кода, какие строки выполнились, а какие нет. Важно понять кто из пользователей что делал до ошибки (т.е. по какому пути пошёл макрос с результатом-ошибкой). Ну и плюс номер строки с ошибкой.

Спасибо можно перевести на WebMoney-кошелёк R378231864568 или на Яндекс-деньги 410015093172871