Страницы: 1
RSS
Видимость кнопки в зависимости от условия
 
Добрый день, уважаемые жители Планеты!
Поискал по различным форумам, но ответа на свой вопрос так и не нашел.
Подскажите, пожалуйста, как можно сделать кнопку не активной или же скрыть ее, если в форме не выбрано значение?
Пробовал реализовать свою "хотелку" через Enabled и Visible, но ничего не получилось.
Пример файла прикрепляю.
С уважением, Андрей.
 
Dost1369, попробуйте так.
Код
Private Sub CommandButton1_Click()
If ComboBox1.Value = "" Then
CommandButton1.Enabled = True
Else
CommandButton1.Enabled = False
Unload Me
Oglavlenie.Show
End If
End Sub
или в блок Private Sub UserForm_Initialize()
Строку:
CommandButton1.Visible = False
А в блок Private Sub ComboBox1_Change()
Строку:
CommandButton1.Visible = True
Изменено: Александр - 14.12.2016 05:43:24
 
Александр, Спасибо за помощь.
В итоге добавил блокировку на рукописный ввод и получилось, что хотел.
Может кому-то пригодится код:
Код
Dim Silence As Boolean 'скопировал из другого кода, который нашел на просторах сайта, 
но что конкретно делает я не знаю. Зато все работает :)

Private Sub 'скопировал из другого кода, который нашел на просторах сайта, 
но что конкретно делает я не знаю. Зато все работает :) 
ComboBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) 
KeyCode = 0
End Sub

Private Sub 'скопировал из другого кода, который нашел на просторах сайта, 
но что конкретно делает я не знаю. Зато все работает :)
ComboBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
KeyAscii = 0
End Sub

Private Sub UserForm_Initialize()
CommandButton1.Visible = False 'Делает кнопку невидимой
ComboBox1.AddItem "Имя1" 'Перечень имен для записи
ComboBox1.AddItem "Имя2" 'Перечень имен для записи
ComboBox1.AddItem "Имя3" 'Перечень имен для записи
End Sub

Private Sub CommandButton1_Click()
Unload Me 'Закрывает форму
Oglavlenie.Show 'Открывает другую форму
End Sub

Private Sub ComboBox1_Change()
CommandButton1.Visible = True 'Делает кнопку видимой
ActiveCell = ComboBox1.Text 'Записывает имя человека, который вводит значения
ActiveCell.Offset(1, 0).Select 'Спуск на ячейку ниже
End Sub
Страницы: 1
Наверх