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