Динамический список, формула Excel

Я схожу с ума по этому поводу, пытаясь понять, как создать динамический массив для создания меньшего списка из большего списка на основе критерия. Все это должно быть динамическим, потому что базовый список изменится. Два дня гуглил, но не нашел подходящего решения.

Я новичок в создании этих вещей. Пробовали ниже, но это не работает:

=IFERROR(INDEX('2.Data'!$L$3:$L$300;SMALL(IF('2.Data'!$L$3:$L$300 = "12378";ROW('2.Data'!$L$3:$L$300)-ROW('2.Data'!$L$3)+1);ROWS(B$2:B2)));"")

Пример:

Column A
1. 12345
2. 12345
3. 12378
4. 12345
5. 12378
6. 12345

Column B (result)
1. 12378
2. 12378

Column B должен иметь причудливую формулу, которая получает значение от column A на основе критерия = заканчивается на 78, без пустых ячеек между значениями.

Для такого рода проблем действительно требуется макрорешение, а не формула.

lurker 29.05.2018 13:48
Преобразование HTML-таблицы в профессиональный документ Excel
Преобразование HTML-таблицы в профессиональный документ Excel
Это самый простой способ создания Excel из HTML-таблицы.
Импорт excel в laravel в базу данных
Импорт excel в laravel в базу данных
Здравствуйте, дорогой читатель, в этой статье я расскажу практическим и быстрым способом, как импортировать файл Excel в вашу базу данных с помощью...
1
1
149
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

С данными в столбце А, в B1 введите формула массива:

=IFERROR(INDEX($A$1:$A$26,SMALL(IF(RIGHT($A$1:$A$26,2) = "78",ROW($A$1:$A$26)),ROW(1:1))),"")

(в вашей версии Excel может потребоваться; вместо символа в формуле) и копируем вниз:

Формулы массива необходимо вводить с помощью Ctrl + Shift + Enter, а не только с ключом Enter. Если это сделано правильно, формула будет заключена в фигурные скобки на панели формул.

Вы можете избежать формул массива, если используете «вспомогательный» столбец.

Я придумал: = INDEX ('2.Data'! $ L $ 1: $ L $ 100; LARGE (IF (RIGHT ('2.Data'! $ L $ 1: $ L $ ‌ 100; 2) = "78 "; ROW ('2.D‌ ata'! $ L $ 1: $ L $ 100); - 1‌); ROW ($ B $ 1: $ B $ 100)))

jkpieterse 29.05.2018 13:56

@jkpieterse Выглядит хорошо ... Я потратил так много-много часов, помогая пользователям «ускорить» их рабочие листы, что почти всегда буду использовать вспомогательный столбец, а не формулу массива.

Gary's Student 29.05.2018 14:04

@Erik Спасибо за отзыв.

Gary's Student 29.05.2018 14:25

@ Gary'sStudent Полностью согласен. Но мне нравятся головоломки, поэтому сложная задача с формулой массива для меня все равно что закончить головоломку Times :-)

jkpieterse 29.05.2018 15:30

Другие вопросы по теме