Дано
А Б
1 1 9
2 8
3 7
4 4 6
5 5
Нужно
А Б В
1 1 9 19
2 8 18
3 7 17
4 4 6 46
5 5 45
Если в текущей строке в колонке А содержится непустое значение, то конкатинируем в колонке В текущей строки значение А-текущей строки и Б-текущей строки.
Если в текущей строке в колонке А содержится пустое значение, то для указанной выше конкатенации берем первое сверху (или последнее снизу, если считать от А1) непустое значение относительно текущей строки и конкатинируем его с Б-текущей строки, например, 18 в ячейке В2, потому что А2 пустое, а ближашее сверху непустое это 1 (А1).
Как конкатинировать понятно, но надо как-то найти это первое непустое сверху или последнее непустое снизу. ДумалLOOKUP
приспособить как-то можно, только так вот (пример для 5-той строки)
=LOOKUP(NOT(ISBLANK($A$1:A5));$A$1:A5;$A$1:A5)
Не работает, потому что ISBLANK
не умеет в диапазоны. А так просто не работает
=LOOKUP("<>0";$A$1:A5;$A$1:A5)