Printable Version of Topic
Click here to view this topic in its original format |
Forums > Флейм > Маааленький вопросик по Excel |
Posted by: Lord KiRon on 07-06-2010, 10:27 | ||
Для тех кто хорошо рубит. Имеем таблицу, в таблице есть колонка C и колонка D. Обе колонки содержат листы из двух элементов "Да" и "Нет". В задаче требуется чтоб если в Cx стоит "Нет", то и в Dx стояло "Нет", а если в Cx стоит "Да" то пользователь мог бы выбрать значение Dx "вручную" , то есть из выпадающего списка "Да/Нет". Именно со второй частью условия и проблема в
Как сие сделать не используя VBA (если вообще возможно)? То есть нужно что то похожее на Conditional Formating, только не он конечно ибо он только красит. |
Posted by: shatterhand on 07-06-2010, 12:40 |
Верни пустую строку =ЕСЛИ(C1="нет";"нет";"") Не то? |
Posted by: anatolyArts on 07-06-2010, 13:01 |
Очень просто: 1). Создай группу "Да, Нет" и назови её как-нибудь. Например: А1='Да, А2='Нет Отметь их разом и в поле "Name box" это возле строки с формулой, напиши название, скажем "listOne" 2). Задай проверку для поля Dx. Для этого клацни по полю мышкой, в меню Data выбери Validation. В графе "Allow" выбери "list" В графе "source" введи формулу: =IF($C$x="Да",listOne,A2) Замени $x на номер твоей строки. Всё. Для удобства группы можно создавать подальше от глаз пользователя. |
Posted by: adjonja on 07-06-2010, 13:04 | ||
|
Posted by: anatolyArts on 07-06-2010, 13:12 |
Кстати, вот нашел статью про как раз такую задачку: link (http://www.contextures.com/xlDataVal02.html |
Posted by: Lord KiRon on 07-06-2010, 15:15 |
anatolyArts Спасибо, но есть одна проблемка - у меня 2007-й и как в нем создать named group- не имею не малейшего понятия. У меня там собственно и так лист для значений , я его создал через validation просто перечислив значения. upd: - нашел, они переименовали его в named range ![]() |
Posted by: Lord KiRon on 07-06-2010, 17:28 | ||
Неа, как оказалось увы не катит, то есть код я написал, даже "оптимизировал":
как только ставишь значение в ручную - формула исчезает... |
Posted by: FiL on 07-06-2010, 17:45 |
я не спец в экселях, но мне кажется надо подходить с другой стороны. надо ВЕЗДЕ в колонке D проставить этот листбокс с двумя значениями, а потом если в С стоит "нет", то в D надо программно выставлять вариант "нет" и лочить ячейку. Должно делаться через кондишнл форматтинг мне кажется. Но не гарантирую, у меня экселя уже давно нету. |