Исходный текст
Option Explicit
Call EraseTestEvents(ThisObject)
'==============================================================================
' Удалить все тестовые события объекта. Добавить одно в конце.
'==============================================================================
Sub EraseTestEvents(Obj)
Dim EventCol, testdesc, i, evnt
Set EventCol = Obj.Events ' Получить коллекцию событий
With EventCol
'Если нет информации о событиях, выйти из процедуры
If .Count = 0 Then
MsgBox "События у объекта отсутствуют.", _
vbInformation, "Информация о текущей настройке"
Exit Sub
End If
testdesc = "Тестовое событие"
For i = 0 to .Count - 1
if .Item(i).Description = testdesc Then
.Item(i).Erase
End If
Next
Set evnt = .Create()
obj.Description = testdesc
Msgbox ("Номер последнего созданного события - " & .Index(evnt))
Call .Update()
End With
End Sub
'==============================================================================