2017-02-19 11 views
2

У меня есть два листа данных с соответствующими данными в несоответствующих строках.Вложенные косвенные() функции, возвращающие #REF

На одном листе у меня есть список значений.

С другой стороны, у меня есть список номеров, которые соответствуют номеру строки на первом листе, который содержит совпадающее значение, которое я пытаюсь автоматически копировать на второй лист.

Вот мой код:

=INDIRECT("'Combined ICME+ipShocks List'!"&(INDIRECT("A"&H3))) 

Так что должно быть направлено на листе под названием «Объединенный МСМОС + Список ipShocks», ячейки в столбце А с строкой, определяемой ячейкой Н3 на текущем листе ,

Замена того, что я написал для второго косвенного() с простой ячейкой (например, H3), работает, поэтому я подозреваю, что она имеет какое-то отношение ко второму косвенному(), которое я написал.

+0

- значение 'INDIRECT (« A »& H3)' номер или действительный адрес ячейки? Похоже, что вы не указали столбец ''! A '& (' – Slai

+0

@Slai Он должен быть действительным адресом ячейки. H3 - это просто номер, поэтому он должен быть A (значение H3) на листе« Объединенный ICME + ipShocks List " – Colin

+1

Есть ли причина, по которой вы не можете использовать' = INDIRECT ("'Комбинированный список ICME + ipShocks'! A" и H3) 'или еще лучше,' = INDEX ('Комбинированный список ICME + ipShocks'! A: A , H3) '? – Jeeped

ответ

3

Чтобы ответить на вопрос, почему это выдает ошибку:

Косвенные нужен текст значение, который решает адреса ячейки.

В вашей формуле вы вставляете две косвенные() функции.

Внутренний косвенный разрешит ссылку на ячейку, например A1 (в качестве ссылки, а не как текст). Затем вы объединяете эту ссылку со строкой и передаете ее внешнему косвенному(). Это и вызывает ошибку. Косвенный ожидает строку. Вы кормите его строкой, конкатенированной ссылкой на ячейку, которая не является комбинацией, которую любая функция будет понимать.

Вам не нужно внутреннее косвенное вообще, если вы просто включаете букву столбца в константу строки.

=INDIRECT("'Combined ICME+ipShocks List'!A"&H3) 

Примите к сведению, что Косвенное летуч и заставит учебное пособие пересчитывать каждый раз, когда какие-либо изменения в клетках. Это может сделать вашу книгу медленной. Косвенные должны использоваться очень экономно. В этом случае вместо этого можно использовать индекс, как это предложил Jeeped в комментарии к вашему вопросу.

=INDEX('Combined ICME+ipShocks List'!A:A,H3) 

Поскольку вы знаете имя листа и столбец, только номер строки является переменной. В этом случае косвенный избыток. Используйте косвенный, только если вам нужно построить имя листа с помощью формулы.