Разрабатываю пару таблиц (ведут учёт товара). Решил по событию "Worksheet_SelectionChange" вызвать форму и установить фокус на TextBox. Па-пам! Всё работает! Не модальная форма появляется при выборе активной ячейки из данного диапазона. Если форма закрывается от кнопок которые расположены на ней (OK, Отмена) то при выборе ячейки появляется форма с фокусом на TextBox.
Код
If formSell.Enabled <> True Then
formSell.Enabled = True
formSell.Show
formSell.tbCount.SetFocus
Однако если форма скрывается (методом Hide) без кнопок которые на ней расположены (а это требуется) фокус не хочет "фокуситься")
Да и если не скрывается - фокуса нет *
Пользователь щёлкает по листу при котором форма не скроется, но фокуса нет.
Код
If (Not (IsEmpty(ActiveCell)) And (intC = 2) And (intR > 2)) Then
If formSell.Enabled <> True Then
formSell.Enabled = True
formSell.Show
formSell.tbCount.SetFocus ' ВОТ ЭТА СТРОКА НЕ ДАЁТ ФОКУСА ХОТЬ И ПРОХОДИТ ПРИ ОТЛАДКЕ НА УРА
Else
formSell.tbCount.SetFocus ' * ЭТА ТО ЖЕ
End If
Else
formSell.Enabled = False
formSell.Hide
End If
Что не так? Ещё хочу заметить что при сокрытие формы от её деток обращение происходит при помощи Me.
Код
Private Sub btnCancel_Click()
tbCount.Text = ""
cbEmployee.Value = False
Me.Enabled = False
Me.Hide
End SubPrivate Sub btnOK_Click()
Private Sub btnOK_Click()
...
Me.Hide
End Sub