Следующая формула предоставляет другой способ отображения в Workbook1 текста в некоторой строке из шести ячеек в Workbook2, если ячейка A1 в Workbook2 равна некоторому значению "X".
Это формула массива, поэтому вам нужно будет выбрать шесть ячеек в Workbook1, в которых вы хотите отобразить текстовые значения, вставить или ввести формулу в строку формул, а затем завершить ввод с помощью Ctrl+Shift+Enter. Формула покажет черточки («-») в ячейках, если в ячейке A1 Workbook2 нет "X". (Для простоты я предполагаю, что значения в обеих книгах приведены в Листе 1).
=IF([Workbook2.xlsx]Sheet1!$A$1="X",OFFSET([Workbook2.xlsx]Sheet1!$B$1,0,0,1,6),"-")
Ключевой частью формулы является функция OFFSET, которая принимает следующие аргументы:
- Ссылка на ячейку, в данном случае $ B $ 1
- Смещение строки, количество строк вверх (отрицательное число) или строк вниз (положительное число), начиная с диапазона ячеек, который вы хотите вернуть
- Смещение столбца, количество столбцов влево (отрицательный) или правый (положительный), от которых начинается диапазон, который вы хотите вернуть
- Высота или количество строк в диапазоне, которые вы хотите вернуть
- Ширина или количество столбцов в диапазоне, который вы хотите вернуть.
В формуле ссылка на ячейку равна $ B $ 1, смещение строки от $ B $ 1 равно 0, смещение столбца от $ B $ 1 равно 0, высота возвращаемых значений равна 1 строке, а ширина равна 6 столбцам. , Здесь функция OFFSET будет возвращать значения в ячейках B1:G1, если "X" совпадает. Если бы смещение строки было равно 2, а смещение столбца 4, то были бы возвращены значения в ячейках F3:K3.