2015-04-20 3 views
1

Я хотел бы перечислить все фрукты в моей корзине, а затем принести фрукты своим друзьям и сделать это в раскрывающемся списке список автоматически уменьшаются.Выпадающий список Excel, созданный из col A: число и col B: элемент, а затем уменьшающие параметры

Колонка A: количество плодов Колонка B: фрукты Колонка C: имена Колонка D: выпадающий список

Например, у меня есть 1 Ananas, 0 яблока и 2 апельсина. Когда я даю плод одному моему первому другу, варианты из раскрывающегося списка - «ananas»; "оранжевый"; "оранжевый".

Если я даю ананасу одному из моих друзей, то раскрывающийся список становится «оранжевым», «оранжевым» для других и т. Д.

Можно ли это сделать с помощью Excel? Если да, возможно ли это без VBA, с проверкой данных и регулярными формулами?

спасибо.

ответ

0

Это возможно, но включает в себя несколько шагов.

Я полагаю, плодовые суммы в A1:A5, плодовые имена B1:B5, друг имена C1:C5 и выпадающий список выбора корзины в D1:D5. Я буду использовать F1:F5 для расчета списка, а G1:G15 будет содержать список корзин для выпадающего списка.

  1. Вычислить, на котором строки каждый плод должен начаться в списке корзины, в зависимости от объема и корзины использования:
    • F1 =A1-COUNTIF($D$1:$D$5,B1).
    • F2 =A2+F1-COUNTIF($D$1:$D$5,B2).
    • Скопировать F2 в F3: F5.
  2. Создание списка корзины для раскрывающегося списка:
    • G1: G15 =INDIRECT("B"&COUNTIF($F$1:$F$5,"<"&ROW())+1).
  3. Создать Validation список данных для D1:D5:
    • В источнике списка поставил =OFFSET($G$1:$G$15,0,0,COUNTIF($G$1:$G$15,"<>0")). Я предполагаю, что ячейки под строкой 5 в именах фруктов будут пустыми, поэтому оставшиеся строки в списке получат значение 0, следовательно "<>0" в списке.

Теперь, когда вы выбираете фрукты из списка проверки, список будет обновляться соответственно.

+0

Спасибо, де Патикин, он отлично работает. – user3019338