59 lines
1.2 KiB
Text
59 lines
1.2 KiB
Text
APPENDCOLS
|
|
=LAMBDA(xs,
|
|
LAMBDA(ys,
|
|
LET(
|
|
nx, COLUMNS(xs),
|
|
colIndexes, SEQUENCE(1, nx + COLUMNS(ys)),
|
|
rowIndexes, SEQUENCE(MAX(ROWS(xs), ROWS(ys))),
|
|
|
|
IFERROR(
|
|
IF(nx < colIndexes,
|
|
INDEX(ys, rowIndexes, colIndexes - nx),
|
|
INDEX(xs, rowIndexes, colIndexes)
|
|
),
|
|
NA()
|
|
)
|
|
)
|
|
)
|
|
)
|
|
|
|
|
|
APPENDROWS
|
|
=LAMBDA(xs,
|
|
LAMBDA(ys,
|
|
LET(
|
|
nx, ROWS(xs),
|
|
rowIndexes, SEQUENCE(nx + ROWS(ys)),
|
|
colIndexes, SEQUENCE(
|
|
1,
|
|
MAX(COLUMNS(xs), COLUMNS(ys))
|
|
),
|
|
|
|
IFERROR(
|
|
IF(rowIndexes <= nx,
|
|
INDEX(xs, rowIndexes, colIndexes),
|
|
INDEX(ys, rowIndexes - nx, colIndexes)
|
|
),
|
|
NA()
|
|
)
|
|
)
|
|
)
|
|
)
|
|
|
|
|
|
gridString
|
|
=LAMBDA(grid,
|
|
LET(
|
|
ixCol, SEQUENCE(ROWS(grid), 1, 1, 1),
|
|
|
|
CHAR(10) & CONCAT(
|
|
APPENDCOLS(
|
|
IF(ixCol, " ")
|
|
)(
|
|
APPENDCOLS(grid)(
|
|
IF(ixCol, CHAR(10))
|
|
)
|
|
)
|
|
)
|
|
)
|
|
)
|