Я предполагаю, что вы можете добавить это к коду, который открывает файл "инструмент" Excel, выбранный пользователем. Другие предположения включают в себя: tblExcelTools в качестве имени таблицы; числовое поле первичного ключа, tool_id; элемент управления со списком с именем cboToolChooser и его связанное поле - tool_id.
Dim strSql AS String
strSql = "UPDATE tblExcelTools" & vbCrLf & _
"SET isLocked = -1" & vbCrLf & _
"WHERE tool_id = " & Me.cboToolChooser
Debug.Print strSql ' look in Immediate window (Ctrl+g) if problems '
CurrentDb.Execute strSql, dbFailonerror
Вы должны добавить обработчик ошибок, чтобы справиться с любыми проблемами, которые вызывает dbFailonerror.
Я думаю, что что-то похожее на это может сработать для достижения вашей непосредственной цели - установите isLocked в -1 (True), когда пользователь откроет инструмент. Однако я не имею ни малейшего представления о том, как вы собираетесь установить isLocked обратно в False, когда пользователь закончит работу с инструментом.
Редактировать : Я предложил этот пример кода, думая, что вы запустите его из Access, но вы делаете это из Excel. Я не использую Excel с пользовательской формой. Может быть, этот код может быть просто адаптирован для ADO. Откройте соединение ADO с Access db, затем используйте: cn.Execute strSql