Страницы: 1
RSS
Как сделать зависимые друг от друга флажки
 
Добрый день, коллеги! Помогите, пжл, со следующим вопросом. Есть бюджет компании с несколькими юрлицами и проектами, которые включаются/отключаются с помощью флажков (элементы управления). Но при этом у меня отдельно включаются проекты и отдельно юрлица.
Проблема: как сделать, чтобы при выборе одного из юрлиц, включались только проекты, которые к нему относятся. Например, если нажимаем галочку компания 1, то автоматически остаются галочки по проектам Лес и Пик. При этом еще чтобы оставалась возможность проекты отдельно щелкать. Файл с примером во вложении. Заранее спасибо!
PS
Компания 1: Лес и Пик
Компания 2 - ФОК, Мероприятия, Офис
 
Изменено: Александр - 14.01.2019 11:09:15
 
для того чтобы "включались" проекты, принадлежащие компании, нужно знать какие проекты к какой компании относятся
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Компания 1: Лес и Пик
Компания 2 - ФОК, Мероприятия, Офис
 
Так или нет?
 
Извиняюсь, я, наверное, не совсем корректно написал в теме. Да, по юрлицам все ок, но при этом еще чтобы оставалась возможность проекты отдельно щелкать. При этом не обязательно, чтобы по юрлицам галки отключались.
 
тут нет экстрасенсов и никто не угадает КАК ОНО ДОЛЖНО работать, пока Вы не напишете КАК ОНО ДОЛЖНО работать
(поправил чуть файл, не те №№ флажков написал в массивы в первом варианте)
Изменено: Ігор Гончаренко - 14.01.2019 11:21:52
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
извините, сразу не сообразил

Возникла проблема при переносе кода в рабочий файл: при нажатии на галки юрлиц ничего не происходит, но при этом при запуске непосредственно из кода все работает. В чем может быть проблема?
Файл во вложении
Изменено: Александр - 14.01.2019 14:28:29
 
надеюсь это
Код
Sub Флажок1_Щелчок()
  ChangeFlag Array(3, 6), [a4]
End Sub

Sub Флажок2_Щелчок()
  ChangeFlag Array(4, 7, 14), [a5]
End Sub

Sub ChangeFlag(a, v)
  Dim i&
  For i = 0 To UBound(a)
    ActiveSheet.Shapes("Check Box " & a(i)).OLEFormat.Object.Value = v
  Next
End Sub
скопировали в программый модуль Вашего файла

осталось связать обьекты находящиеся у Вас в файле с макросами, лежащими там же:
правой кнопкой по Флажку Компания 1, назначить макрос, и выберите из списка Флажок1_Щелчок
... и по аналогии 2
Изменено: Ігор Гончаренко - 14.01.2019 11:44:24
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Цитата
Ігор Гончаренко написал:
правой кнопкой по Флажку Компания 1, назначить макрос, и выберите из списка Флажок1_Щелчок... и по аналогии 2
Точно! Не назначил макрос на флажок))
Игорь, подскажите еще, пжл, что делает процедура Sub ChangeFlag(a, v).
 
устанавливает флажкам с именами*, переданным в массиве а, значение v

*                                              
на самом деле в процедуру передается не массив имен флажков, а массив их номеров, так как все флажки на листе имеют имя "Chеck Box №"
Изменено: Ігор Гончаренко - 14.01.2019 12:14:12
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Спасибо большое! Как всегда выручили))
 
Добрый день. Вопрос, а что значат цифры (3,6) в -  ChangeFlag Array(3, 6), [a4]
Изменено: Ятсок Вредина - 05.12.2023 15:46:38
 
Числа в названии флажка "Флажок 3" "Флажок 6"
 
Числа в названии флажка "Флажок 3" "Флажок 6"
Цитата
написал:
Числа в названии флажка "Флажок 3" "Флажок 6"
СПАСИБО ОГРОМНОЕ. Получилось)  
 
Не совсем работает все таки(
А параметр а1 это что?  Галки ставит тем ячейкам каким надо, а вот при снятии ругается.
 
Цитата
написал:
Не совсем работает все таки(А параметр а1 это что?  Галки ставит тем ячейкам каким надо, а вот при снятии ругается.
Все разобрался. Спасибо за помощь!))
Страницы: 1
Наверх