Alex_Wong
Дата: 08.01.2012 19:51:26
Добрый день.
Форма в лент.виде содержит подчененную.
В подчиненной есть полесосписком73.
При выборе значения из этого псп
по коду:
Private Sub ПолеСоСписком73_Change()
MsgBox " Хотим изменить Решение ?"
' Программно нажимаю кнопку, чтобы произошли нужные мне события...
Forms!frmOctPGN!Кнопка200.SetFocus
SendKeys "{ENTER}"
End Sub
все происходит как мне нужно.
Единственное, если вошел в псп и ничего
не изменил, например - было значение 'отказать',
и остался на нем, то опять происходит букет
тех событий, которые мне уже категорично не
нужны. Варианты с Dirty, Afterupdate ...
-не помогают.
Как сделать, чтоб при НЕ изменении значения
в псп на новое в моем случае ничего не
происходило, либо еще и писало :
MsgBox "Изменения не произошли!"
Спасибо.
mds_world
Дата: 08.01.2012 22:56:56
Выбор события Change крайне спорен для высказанной задачи. Это же на каждый чих будет подниматься мсгбокс - стерли букву, написали букву, а он уже здесь.
Чтобы ничего не происходило когда вторично выбрано прежнее значение, надо в BeforeUpdate комбо сравнивать выбранное значение с OldValue и, если совпадают, взводить флажок. А в AfterUpdate его проверять. Если он True, ничего не делать, если False, значит изменение произошло. И здесь же флажок сбрасывать