Добрый день! Имеется 22 заблокированных выключателя (togglebutton). При нажатии на "Старт" через InputBox необходимо ввести номер выключателя, который останется заблокированным и изменить цвет его шрифта на красный, остальные разблокировать. [vba]
Код
s = InputBox("Введите номер кейса, в котором предположительно находится 3000000 рублей", "Зафиксировать кейс с 3000000 рублей") ToggleButton_s_.ForeColor = &HFF ToggleButton_s_.Locked = True
[/vba] Во вложении вместо номера _s_ стоит 5, так как перепробовал множество вариантов (так как самоучка - скорее всего чего-то не знаю) с переменными - результат 0. Есть ли решение задачи без объявления массива? или невозможно в зависимости от номера переменной выбрать и изменить нужное свойство данного объекта? [moder]Оформляйте код тегами (кнопка #)![/moder]
Добрый день! Имеется 22 заблокированных выключателя (togglebutton). При нажатии на "Старт" через InputBox необходимо ввести номер выключателя, который останется заблокированным и изменить цвет его шрифта на красный, остальные разблокировать. [vba]
Код
s = InputBox("Введите номер кейса, в котором предположительно находится 3000000 рублей", "Зафиксировать кейс с 3000000 рублей") ToggleButton_s_.ForeColor = &HFF ToggleButton_s_.Locked = True
[/vba] Во вложении вместо номера _s_ стоит 5, так как перепробовал множество вариантов (так как самоучка - скорее всего чего-то не знаю) с переменными - результат 0. Есть ли решение задачи без объявления массива? или невозможно в зависимости от номера переменной выбрать и изменить нужное свойство данного объекта? [moder]Оформляйте код тегами (кнопка #)![/moder]Shtirlits_57rus_
s = InputBox("Введите номер кейса, в котором предположительно находится 3000000 рублей", "Зафиксировать кейс с 3000000 рублей") '... Me.Controls("ToggleButton" & s).ForeColor = &HFF Me.Controls("ToggleButton" & s).Locked = True
[/vba]
Shtirlits_57rus_, можно так:[vba]
Код
s = InputBox("Введите номер кейса, в котором предположительно находится 3000000 рублей", "Зафиксировать кейс с 3000000 рублей") '... Me.Controls("ToggleButton" & s).ForeColor = &HFF Me.Controls("ToggleButton" & s).Locked = True
Private Sub CommandButton1_Click() Dim s As String, objControl As Object s = InputBox("Введите номер кейса, в котором предположительно находится 3000000 рублей", "Зафиксировать кейс с 3000000 рублей") If Len(s) Then s = "ToggleButton" & s For Each objControl In Me.Controls If TypeOf objControl Is ToggleButton Then If objControl.Name <> s Then objControl.Locked = False Else objControl.Locked = True objControl.ForeColor = &HFF End If End If Next End If Exit Sub
[/vba]
[vba]
Код
Private Sub CommandButton1_Click() Dim s As String, objControl As Object s = InputBox("Введите номер кейса, в котором предположительно находится 3000000 рублей", "Зафиксировать кейс с 3000000 рублей") If Len(s) Then s = "ToggleButton" & s For Each objControl In Me.Controls If TypeOf objControl Is ToggleButton Then If objControl.Name <> s Then objControl.Locked = False Else objControl.Locked = True objControl.ForeColor = &HFF End If End If Next End If Exit Sub
Добрый день, у меня возник вопрос, на листе 45 кнопок, решил с помощью переменной воспользоваться циклом (как указано выше) и пересчитать сколько из них нажато, но у меня в результате выдает либо 45 если ищем True, либо 0 если ищем False [vba]
Код
Sub СчитаемМашины() Dim КоличествоМашин As Integer Dim НомерКнопки As Integer КоличествоМашин = 0
For НомерКнопки = 1 To 45 If ToggleButton & НомерКнопки = True Then КоличествоМашин = КоличествоМашин + 1 End If Next
MsgBox (КоличествоМашин)
End Sub
[/vba] Заранее спасибо за ответ
Добрый день, у меня возник вопрос, на листе 45 кнопок, решил с помощью переменной воспользоваться циклом (как указано выше) и пересчитать сколько из них нажато, но у меня в результате выдает либо 45 если ищем True, либо 0 если ищем False [vba]
Код
Sub СчитаемМашины() Dim КоличествоМашин As Integer Dim НомерКнопки As Integer КоличествоМашин = 0
For НомерКнопки = 1 To 45 If ToggleButton & НомерКнопки = True Then КоличествоМашин = КоличествоМашин + 1 End If Next
много чего не так: -- задали свой вопрос в чужой теме в нарушение Правил форума -- не приложили файл с примером -- приведённый макрос предназначен для работы с формой, поэтому обращение Me. А у вас, судя по описанию, кнопки на листе. Но так как файла нет, это лишь догадки -- данную задачу, на мой взгляд, можно решить иначе, проще. Но без файла опять-таки...
много чего не так: -- задали свой вопрос в чужой теме в нарушение Правил форума -- не приложили файл с примером -- приведённый макрос предназначен для работы с формой, поэтому обращение Me. А у вас, судя по описанию, кнопки на листе. Но так как файла нет, это лишь догадки -- данную задачу, на мой взгляд, можно решить иначе, проще. Но без файла опять-таки...Pelena
"Черт возьми, Холмс! Но как??!!" Ю-money 41001765434816