Диапазон ссылочных ячеек на другом листе - Excel

628
KDFZ

У меня есть 3 листа, скажем, они "sheet1", "sheet2" и "datasheet". На «sheet2» есть «$ A $ 3» в ячейке B3 (это генерируется динамически), а на «sheet1» я хочу создать функцию (например, сумму или среднее) на основе данных из «таблицы данных», используя $ A $ 3 в качестве начальный ряд до последнего ряда. Как бы я это сделал? Слишком много вложенных функций, я постоянно получаю ошибки разбора:

=SUM('datasheet'!INDIRECT('sheet2'!B3 & ":" & 'datasheet'!A)) 

В основном, с точки зрения псевдокода:

=SUM(datasheet[cell ID written on B3 of "sheet2"]:[last row of "datasheet"]) 
0
Будет ли столбец меняться или это всегда `A` Scott Craner 7 лет назад 0
Столбец всегда А на листе данных. KDFZ 7 лет назад 0

1 ответ на вопрос

1
Scott Craner

Если столбец статический, всегда A, тогда в B3 на sheet2 просто поместите начальный номер строки и используйте эту формулу:

=SUM(INDEX('datasheet'!A:A,Sheet2!$B$3):INDEX('datasheet'!A:A,MATCH(1E+99,'datasheet'!A:A))) 

Он будет суммироваться от указанной строки до последней ячейки с номером в ней.


Другой вариант, так как SUM игнорирует любые нечисловые значения, которые формула может быть сокращена до:

=SUM(INDEX('datasheet'!A:A,Sheet2!$B$3):'datasheet'!A65000) 

Измените 65000 на смехотворно большое число, которое никогда не будет достигнуто в вашем наборе данных.

Похожие вопросы