Я создавал лист Excel для опроса набора данных и создания набора показателей. Я стремлюсь сделать процесс максимально расширяемым.
В ссылках приведены изображения простого макета набора данных, чтобы проиллюстрировать, чего я пытаюсь достичь, он содержит лист показателей, где я хочу отобразить информацию и лист набора данных:
и
Цель состоит в том, чтобы в выделенной ячейке (D6) отображалось количество элементов в «Листе2», которые соответствуют критериям статуса элемента «Открыто».
Сначала мне это удалось с помощью формулы:
COUNTIFS(Sheet2!C:C,"Open")
а затем сделать его более расширяемым, используя:
COUNTIFS(INDIRECT(" ' "&D4&" ' !C:C "),"=" &C8)
Это означает, что я могу использовать ячейку (D4) для ссылки на лист, который я хочу просмотреть, и ячейку (C8) для ссылки на критерии, которые я хочу найти. Это хорошо работает до тех пор, пока мне не нужно искать пробелы в наборе данных, после чего он подсчитывает все пробелы в указанном столбце (см. ячейку D8 в таблице показателей).
Поэтому мне было интересно, есть ли удобный способ указать диапазон столбцов для просмотра, например, C1: C100, используя ячейки для ссылки на диапазон, аналогично использованию ячеек для справочного листа и критериев. Я могу использовать приведенную ниже формулу, но она по-прежнему требует, чтобы имя листа было записано в формуле, а не указано в ячейке.
COUNTIF((Sheet2!C1:INDIRECT(CONCATENATE("Sheet2!C", B2))),""&C8)
Когда я применю это к наборам данных, на которые я смотрю, мне нужно будет рассмотреть несколько листов, где наборы данных будут содержать одни и те же критерии (расположенные в одном столбце на всех листах), но набор данных будет различаться по длине. Вот почему я хотел бы сохранить формулу ячейки, ссылающуюся на переменные в определенных ячейках на листе показателей, чтобы, если я добавлю новый набор данных или критерии, которые я хочу посмотреть, мне не нужно было повторно вводить куча формул, но просто скопируйте их.
ОБНОВЛЕНИЕ
Следуя ответу JvdV, я смог удалить все переменные из формулы в ячейки на листе показателей (полезно для того, что я делаю, и может представлять интерес для других). По сути, он использует функции 'INDIRECT' и 'CONCAT' для создания необходимой строки, цветного кодированного изображения< /а>