
Excel 2010. Формула на Листе1: =COUNTIF($D$9:INDIRECT($D$7),"qa")
возвращает количество ячеек, содержащих текст qa
в диапазоне $D$9
до любой ячейки, на которую ссылается ячейка &D$7
.
Однако перемещение формулы на другой лист и настройка для ссылки на исходный лист возвращает ошибку #ЗНАЧЕНИЕ. Новая формула =COUNTIF('Sheet2'!$D$9:INDIRECT('Sheet2'!$D$7),"qa")
. Может ли кто-нибудь помочь?
решение1
Попробуйте так:
=COUNTIF(INDIRECT("'sheet2'!$D$9:"&'Sheet2'!$D$7),"qa")
решение2
Если Sheet2!D7
содержит, например, D42
, то вычисление вашей формулы будет происходить следующим образом:
=СЧЁТЕСЛИ('Лист2'!$D$9:ДВССЫЛ('Лист2'!$D$7);"qa") → =СЧЁТЕСЛИ('Лист2'!$D$9:ДВССЫЛ("D42");"qa") → =СЧЁТЕСЛИ('Лист2'!$D$9:$D$42;"qa")
Но это вводит в заблуждение — это не эквивалентно вводу 'Sheet2'!$D$9:$D$42
; скорее, поскольку $D$42
генерируется независимо, он интерпретируется как ссылка на ячейкуD42
на текущем листе
– и это, конечно, приводит к недопустимому диапазону. Чтобы обратиться к диапазону 'Sheet2'!$D$9:$D$42
, измените формулу на
=COUNTIF(Sheet2!$D$9:INDIRECT("Sheet2!"&Sheet2!$D$7),"qa")
который будет оцениваться как
→ =СЧЁТЕСЛИ(Лист2!$D$9:ДВССЫЛ("Лист2!"&"D42"),"qa") → =СЧЁТЕСЛИ(Лист2!$D$9:ДВССЫЛ("Лист2!D42"),"qa") → =СЧЁТЕСЛИ(Лист2!$D$9:Лист2!$D$42;"qa") → =СЧЁТЕСЛИ(Лист2!$D$9:$D$42;"qa")
Или используйте более экономичную версию Барри.
P.S. Похоже, кавычки не нужны, 'Sheet2'
если только имя вашего листа не содержит пробелов или других специальных символов.