Заполните выпадающий список, если 2 столбца соответствуют значениям из 3-го столбца - PullRequest
0 голосов
/ 20 февраля 2020

Я использую списки проверки данных в Excel для чего-то на основе словаря данных из базы данных. Настройка выглядит следующим образом:

    Sheet1
    column A - DB Table Name (repeats for as many rows as there are associated values in column B)
    Column B - List of all values associated with the DB table name in column A
Example Sheet1
Column A  |  Column B
DB1       | ValueA1
DB1       | ValueA2
DB1       | ValueA3
DB2       | ValueB1
DB3       | ValueC1
DB3       | ValueC2

На листе 2 у меня есть раскрывающийся список Проверка данных в ячейке D1, которая заполняется из таблицы. Все параметры в таблице являются именами БД в столбце А листа1. Основываясь на выборе БД из ячейки D1 ​​на Листе 2, я хочу, чтобы B1 листа 2 был раскрывающимся списком всех соответствующих значений из столбца Листа B, где ячейка Листа 2 соответствует столбцу Листа1.

Пример: Person выбирает DB3 в листе 2 ячейка D1. Затем ячейка B1 в Sheet2 становится выпадающим списком, содержащим значения [ValueC1, ValueC2]. Это значения столбца B из Sheet1, которые соответствуют именам Sheet2 D1 и Sheet1, столбец A.

Пробовал множество вещей с помощью Index и vlookup, но я не получаю несколько результатов, поэтому проверка данных не примет формулу как он возвращает только один результат.

Надеюсь, это имеет смысл ...

1 Ответ

0 голосов
/ 20 февраля 2020

1] В «sheet 1», столбце C C2:C4 создайте «Уникальный список данных A»: введите DB1, DB2 и DB3

2] В «sheet 2» D1 >> Data Validation >>

Разрешить: List

Источник: =Sheet1!$C$2:$C$4

Выбрать OK

3] In "sheet 2" B1 >> Data Validation >>

Разрешить: List

Источник : =OFFSET(Sheet1!$B$1,MATCH($D1,Sheet1!$A$2:$A$7,0),0,COUNTIF(Sheet1!$A$2:$A$7,$D1))

Выбрать OK

enter image description here

...