Исходный код
Option Explicit
Call ShowLockedObjInfo()
'==============================================================================
'Вывести на экран информацию о заблокированных выбранными пользователями объектах.
'==============================================================================
Sub ShowLockedObjInfo()
Dim SelUsers, SelUserDlg, UserStr, LockObjects, RetVal, user, obj
'Открыть диалог выбора пользователей
Set SelUserDlg = ThisApplication.Dialogs.SelectUserDlg
SelUserDlg.Caption = "Выбор пользователей для просмотра заблокированных ими объектов"
RetVal = SelUserDlg.Show
If RetVal And SelUserDlg.Users.Count > 0 Then
'Получить коллекцию выбранных пользователей
Set SelUsers = SelUserDlg.Users
UserStr = "Количество объектов, заблокированных выбранными пользователями:" & Chr(13)
For Each user In SelUsers
'Получить коллекцию объектов, заблокированных данным пользователем
Set LockObjects = ThisApplication.LockedObjects(user)
UserStr = UserStr & user.Description & ": " & LockObjects.Count & Chr(13)
For Each obj In LockObjects
UserStr = UserStr & " " & obj.Description & Chr(13)
Next
Next
'Вывести суммарную информацию о заблокированных объектах
MsgBox UserStr, vbInformation, "Информация о заблокированных объектах"
End If
End Sub
'==============================================================================