Как индексировать/сопоставлять данные из зависимого массива

Как индексировать/сопоставлять данные из зависимого массива

Я хотел бы знать, как использовать комбинацию Index/Match для извлечения данных из одного столбца в другой, ссылаясь на несколько критериев. Судя по приложенному изображению, столбец R должен быть автоматически заполнен (с помощью формулы) значениями из столбца A на основе соответствующей ссылки в столбце S.

Столбец S будет совпадать со строкой 1, чтобы найти положение его столбца в массиве B2:K11. Затем в соответствующем столбце Excel должен найти номер строки, содержащий любое значение, равное или большее 0 (или не пустое). Когда он находит строку со значением, он перетаскивает значение из столбца A в столбец R.

Например, в R2 он посмотрит на S2 и увидит, что ему нужно местоположение для X1. Он пойдет к массиву и найдет X1 в B1. Он пойдет вниз по столбцу и найдет значение в B3, поскольку там есть «10». Он втянет A3 в R2.

Я пытаюсь сделать это без использования VBA и максимально чисто и эффективно (т.е., если возможно, без вспомогательных столбцов и с меньшей вычислительной мощностью). Я предоставил пример изображения того, что я пытаюсь сделать, поскольку я не могу загрузить фактический файл.

Я пробовал различные комбинации индекса/соответствия, но не смог изменить массив, чтобы он не был привязан к определенному столбцу. Я также пробовал ADDRESS() для создания пользовательского массива, но это не сработало. Попытки формулы показаны ниже:

В R2, чтобы найти расположение столбца: =MATCH(S2,A1:K1)

Чтобы найти номер строки в B2: B11 (один столбец):

{=MATCH(TRUE,ISNUMBER(B2:B11),0} 
{=MATCH(TRUE,B2:B11>=0,0)} 
=MATCH((LOOKUP(2,1/(B$2:B$11<>""),B$2:B$11)),B$2:B$11,0)

Мне нужно объединить их, но массив столбца для просмотра должен быть адресован столбцу, который был сопоставлен.

Чтобы проиндексировать столбец A:

=INDEX($A:$A,ROW,0)

В общем и целом:

=INDEX(A:A,(=MATCH((LOOKUP(2,1/(COLUMN NUMBER MATCHED<>""),COLUMN NUMBER MATCHED)),COLUMN NUMBER MATCHED,0)),0)
Преобразование HTML-таблицы в профессиональный документ Excel
Преобразование HTML-таблицы в профессиональный документ Excel
Это самый простой способ создания Excel из HTML-таблицы.
Импорт excel в laravel в базу данных
Импорт excel в laravel в базу данных
Здравствуйте, дорогой читатель, в этой статье я расскажу практическим и быстрым способом, как импортировать файл Excel в вашу базу данных с помощью...
2
0
87
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

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

Если значения в вашем массиве все числовые, вы можете использовать:

R2:  =LOOKUP(9.9+307,INDEX($B:$K,0,MATCH(S2,$B$1:$K$1,0)),$A:$A)

Если значения могут быть числовыми или буквенными, попробуйте:

R2:  =LOOKUP(2,1/LEN(INDEX($B:$K,0,MATCH(S2,$B$1:$K$1,0))),$A:$A)

В каждом случае формула будет соответствовать последней записи в конкретном столбце с меткой X.

Спасибо за вашу помощь! Это именно то, что я искал.

Sherv 23.07.2019 21:25

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