> Маааленький вопросик по Excel
 Lord KiRon Member is Offline
 Posted: 07-06-2010, 10:27 (post 1, #966268)

Part time flamer

Group: Read Only
Posts: 7784
Warn:0%-----
Для тех кто хорошо рубит.
Имеем таблицу, в таблице есть колонка C и колонка D.
Обе колонки содержат листы из двух элементов "Да" и "Нет".
В задаче требуется чтоб если в Cx стоит "Нет", то и в Dx стояло "Нет", а если в Cx стоит "Да" то пользователь мог бы выбрать значение Dx "вручную" , то есть из выпадающего списка "Да/Нет".

Именно со второй частью условия и проблема в
CODE
=IF(C1="Нет","Нет",???)
не катит ибо там где ??? я не хочу задавать жесткое условие.

Как сие сделать не используя VBA (если вообще возможно)?

То есть нужно что то похожее на Conditional Formating, только не он конечно ибо он только красит.

This post has been edited by Lord KiRon on 07-06-2010, 10:35
PM
Top Bottom
 shatterhand Member is Offline
 Posted: 07-06-2010, 12:40 (post 2, #966304)

друг индейцев

Group: News makers
Posts: 2707
Warn:0%-----
Верни пустую строку
=ЕСЛИ(C1="нет";"нет";"")
Не то?
PM Email Poster
Top Bottom
 anatolyArts Member is Offline
 Posted: 07-06-2010, 13:01 (post 3, #966308)

Superman

Group: Members
Posts: 1014
Warn:0%-----
Очень просто:

1). Создай группу "Да, Нет" и назови её как-нибудь.
Например: А1='Да, А2='Нет
Отметь их разом и в поле "Name box" это возле строки с формулой, напиши название, скажем "listOne"

2). Задай проверку для поля Dx.
Для этого клацни по полю мышкой, в меню Data выбери Validation.
В графе "Allow" выбери "list"
В графе "source" введи формулу: =IF($C$x="Да",listOne,A2)
Замени $x на номер твоей строки.

Всё.
Для удобства группы можно создавать подальше от глаз пользователя.
PM Email Poster Shared files
Top Bottom
 adjonja Member is Offline
 Posted: 07-06-2010, 13:04 (post 4, #966309)

МОЛЕКУЛА
Group: Netlab Soldier
Group: Netlab Soldier
Posts: 3630
Warn:0%-----
QUOTE (anatolyArts)
Для удобства группы можно создавать подальше от глаз пользователя.
или скрыть
PM Email Poster ICQ
Top Bottom
 anatolyArts Member is Offline
 Posted: 07-06-2010, 13:12 (post 5, #966310)

Superman

Group: Members
Posts: 1014
Warn:0%-----
Кстати, вот нашел статью про как раз такую задачку: link
PM Email Poster Shared files
Top Bottom
 Lord KiRon Member is Offline
 Posted: 07-06-2010, 15:15 (post 6, #966318)

Part time flamer

Group: Read Only
Posts: 7784
Warn:0%-----
anatolyArts
Спасибо,
но есть одна проблемка - у меня 2007-й и как в нем создать named group- не имею не малейшего понятия.
У меня там собственно и так лист для значений , я его создал через validation просто перечислив значения.

upd: - нашел, они переименовали его в named range :)

This post has been edited by Lord KiRon on 07-06-2010, 15:17
PM
Top Bottom
 Lord KiRon Member is Offline
 Posted: 07-06-2010, 17:28 (post 7, #966332)

Part time flamer

Group: Read Only
Posts: 7784
Warn:0%-----
Неа, как оказалось увы не катит, то есть код я написал, даже "оптимизировал":
CODE
=IF(Table2[[#This Row],[Заказ получен]]="Нет","Нет",{"Да","Нет"})
но...
как только ставишь значение в ручную - формула исчезает...
PM
Top Bottom
 FiL Member is Offline
 Posted: 07-06-2010, 17:45 (post 8, #966341)

Сварливый Мозг Клуба
Group: Roots
Group: Roots
Posts: 22887
я не спец в экселях, но мне кажется надо подходить с другой стороны.
надо ВЕЗДЕ в колонке D проставить этот листбокс с двумя значениями, а потом если в С стоит "нет", то в D надо программно выставлять вариант "нет" и лочить ячейку. Должно делаться через кондишнл форматтинг мне кажется. Но не гарантирую, у меня экселя уже давно нету.
PM Email Poster ICQ AOL MSN
Top Bottom
Topic Options