Я хочу заполнить столбец значениями первого столбца в данных, пока ячейки не станут пустыми.Затем я хочу заполнить столбец данными из столбца i + 2 (поэтому из столбца CI перейдите к столбцу E).Чтобы это произошло, я хочу, чтобы первая ячейка (в данном случае столбец E) оставалась прежней, пока столбец C не станет пустым и столбец не начнет принимать значения из столбца E.
Этоне то же решение, но оно может удовлетворить ваши потребности лучше, чем ваша первоначальная формула:
=
IFERROR(INDEX(OFFSET($A$1,2,0,COUNTA(A:A)-1,1),ROW($A1)+0),
IFERROR(INDEX(OFFSET($B$1,2,0,COUNTA(B:B)-1,1),ROW($A1)+1-COUNTA(A:A)),
""))
Если вам нужно более 2 столбцов, просто расширьте формулу, следуя этой схеме:
=
IFERROR(INDEX(OFFSET($A$1,2,0,COUNTA(A:A)-1,1),ROW($A1)+0),
IFERROR(INDEX(OFFSET($B$1,2,0,COUNTA(B:B)-1,1),ROW($A1)+1-COUNTA(A:A)),
IFERROR(INDEX(OFFSET($C$1,2,0,COUNTA(C:C)-1,1),ROW($A1)+2-COUNTA(A:A)-COUNTA(B:B)),
IFERROR(INDEX(OFFSET($D$1,2,0,COUNTA(D:D)-1,1),ROW($A1)+3-COUNTA(A:A)-COUNTA(B:B)-COUNTA(C:C)),
""))))
Пример реализации: https://i.stack.imgur.com/MAtxW.png
Я рассмотрел вашу дополнительную пустую строку между заголовком и первой строкой данных.Если вы хотите использовать эту формулу без пустой строки в своем наборе данных, просто измените параметр Offset-Row с 2 на 1:
=
IFERROR(INDEX(OFFSET($A$1,1,0,COUNTA(A:A)-1,1),ROW($A1)+0),
IFERROR(INDEX(OFFSET($B$1,1,0,COUNTA(B:B)-1,1),ROW($A1)+1-COUNTA(A:A)),
""))
Вы можете вставить формулу в любое место на рабочем листе, но нене забудьте изменить буквы столбца в соответствии с расположением ваших полей.В вашем случае, вероятно:
=
IFERROR(INDEX(OFFSET($C$1,2,0,COUNTA(C:C)-1,1),ROW($C1)+0),
IFERROR(INDEX(OFFSET($E$1,2,0,COUNTA(E:E)-1,1),ROW($C1)+1-COUNTA(C:C)),
""))
Имейте в виду, что вам нужно убедиться, что ваши столбцы не содержат строк с пустыми ячейками между именами, поскольку это заставит его пропускать одинаковое количество имен внижняя часть столбца.
РЕДАКТИРОВАТЬ:
Я только что понял, что ваша система использует точки с запятой ";"для анализа формул Excel (мой использует запятые ",").Обратите внимание на это при копировании этих формул в свои таблицы.Вот снова формула, но с использованием ";" ...
=
IFERROR(INDEX(OFFSET($C$1;2;0;COUNTA(C:C)-1;1);ROW($C1)+0);
IFERROR(INDEX(OFFSET($E$1;2;0;COUNTA(E:E)-1;1);ROW($C1)+1-COUNTA(C:C));
""))