Вопрос:

В книге Excel нужно собрать значения из ячейки D5 с множества листов, имена всех изначальных листов перечислены в столбце А2:А50 на листе "Список". Какой способ позволяет корректно построить такую сборку данных, если какие-то листы были удалены?

Смотреть решения всех заданий с листа

Ответ:

Краткое пояснение: При удалении листов 3D-ссылки и ссылки на отдельные листы перестают работать. Формула массива с функцией INDIRECT позволяет динамически обращаться к листам по их именам, указанным в ячейках, и корректно обрабатывать ситуацию, когда некоторые листы отсутствуют.

Пошаговое решение:

  1. Понимание проблемы: Стандартные 3D-ссылки (например, =СУММ(Лист1:Лист10!A1)) и прямые ссылки на листы ломаются, если листы удаляются из книги Excel.
  2. Анализ вариантов:
    • 3D-ссылка: Не подходит, так как она работает только с непрерывным диапазоном листов.
    • Функция CHOOSE: Не подходит, так как она выбирает значение из списка по номеру, а не по имени листа, которое может меняться или отсутствовать.
    • Функция VLOOKUP: В данном случае неприменима, так как VLOOKUP ищет значение в первом столбце указанного диапазона и возвращает значение из той же строки, а нам нужно собрать данные с разных листов по их именам.
    • Сводные таблицы: Могут использоваться для агрегации данных, но не являются прямым методом сбора значений из ячеек с разных листов с учетом возможных удалений.
    • Формула массива с ЕСЛИОШИБКА(ДВССЫЛ) или IFERROR(INDIRECT(...)): Этот вариант наиболее подходит. Функция INDIRECT преобразует текстовую строку (имя листа + адрес ячейки) в ссылку на ячейку. ЕСЛИОШИБКА (или IFERROR) позволяет обработать ошибку, которая возникнет, если лист, на который ссылается INDIRECT, удален, и вернуть заданное значение (например, 0 или пустую строку). Формула массива позволяет применить это к каждому листу.
  3. Формулировка решения: Нужно создать формулу массива, которая будет использовать функцию INDIRECT для формирования ссылок на ячейку D5 каждого листа, имя которого указано в столбце А, и обрабатывать ошибки с помощью ЕСЛИОШИБКА.

Пример формулы (вводятся как формула массива):

=ЕСЛИОШИБКА( 	ext{ДВССЫЛ}(	ext{'Список'!A2}&
ГДЗ по фото 📸
Подать жалобу Правообладателю