Я извлекаю данные из другого листа и хочу использовать ARRAYFORMULA
.
В sheet1
у меня есть доход от продаж разных сайтов на разные даты, и он отсортирован по сайтам и датам.
Я хочу получить доход каждого сайта за последний день.
На sheet2
я перечислил все сайты и могу получить номер строки за последний день сайта, используя MATCH function
. (Класс Б)
Но я не могу получить данные о доходах с таким номером строки.
Формула, которую я использовал в sheet2
Столбце C.
=ARRAYFORMULA(IF(A2:A<>"","'sheet1'!"&ADDRESS((B2:B),2),""))
Это лучший результат, который я могу получить без ошибок. Кажется, это близко к ответу, но я застрял.
Результат sheet2
Я знаю, что INDEX должен решить эту проблему, но его нельзя использовать в ARRAYFORMULA
.
Если кто-нибудь может помочь в этом, мы будем признательны.
Пример
Поскольку даты уже отсортированы; вы можете пойти с:
=arrayformula(xlookup(A2:A9,sheet1!A:A,sheet1!C:C,,,-1))
Альтернатива для одновременного определения местоположения и дохода:
=choosecols(sortn(sort(sheet1!A2:C,2,),9^9,2,1,1),1,3)
@CHYang Я так понимаю, это твой первый вопрос на Stack Overflow. См. Что мне делать, если кто-то отвечает на мой вопрос?
Это еще одна альтернатива функции QUERY
, где вся таблица в диапазоне F2:H9
создается с помощью формулы в ячейке F2
, которая есть;
=ARRAYFORMULA(QUERY({A2:C,BYROW(A2:A,LAMBDA(x,MAXIFS(B2:B,A2:A,x))),Datevalue(B2:B)},"Select Col1, Col2, Col3 Where Col4= Col5 And Col1 Is Not Null"))
Преимущество этой альтернативы: диапазон данных не обязательно упорядочивать по возрастанию или убыванию относительно какого-либо столбца.
Если данные находятся на Sheet1
и вы хотите создать таблицу результатов на другом листе, то на другом листе, скажем, Sheet2
вы можете использовать это;
=ARRAYFORMULA(QUERY({Sheet1!A2:C,BYROW(Sheet1!A2:A,LAMBDA(x,MAXIFS(Sheet1!B2:B,Sheet1!A2:A,x))),Datevalue(Sheet1!B2:B)},"Select Col1, Col2, Col3 Where Col4= Col5 And Col1 Is Not Null"))
Образец листа вы можете посмотреть по ссылке ниже:
https://docs.google.com/spreadsheets/d/1Njbub84EqOotmCb0in635yzf2pkZ93MNuIlFwVqQvZw/edit?usp=sharing
Работает хорошо. Большое спасибо!