使用BYCOL函数时如何获取当前单元格左侧的相对单元格
Google Sheets中引用当前单元格左侧相对单元格的方法
我想在Google Sheets里获取当前单元格对应的左侧相对单元格,目前用的公式如下:
BYCOL(A1:P1;LAMBDA(cells;IF(isblank(OFFSET(cells;0;0));;if(isblank(offset(cells;0;-1));cells&char(10)&1;index(split(offset("I_NEED_TO_GET_CURRENT_CELL";0;-1);char(10);1;2)+1))))
公式里的"I_NEED_TO_GET_CURRENT_CELL"是需要替换的占位部分,不知道怎么正确引用当前单元格来获取左侧单元格的数据。
解决方法
直接利用LAMBDA参数引用当前单元格:
在BYCOL+LAMBDA结构里,LAMBDA的参数cells(建议改成cell更直观)本身就代表遍历到的当前单元格,要获取左侧相邻单元格,直接对这个参数用OFFSET(cell;0;-1)即可,替换掉占位文本。修正后的公式:BYCOL(A1:P1;LAMBDA(cell; IF(ISBLANK(cell);; IF(ISBLANK(OFFSET(cell;0;-1)); cell&CHAR(10)&1; INDEX(SPLIT(OFFSET(cell;0;-1);CHAR(10));1;2)+1 ) ) ))无OFFSET的替代方案:
也可以通过获取当前单元格的列号,用INDEX定位左侧列,还能避免第一列无左侧单元格时的报错:BYCOL(A1:P1;LAMBDA(cell; IF(ISBLANK(cell);; LET(col;COLUMN(cell); IF(col=1; cell&CHAR(10)&1; IF(ISBLANK(INDEX(A1:P1;col-1)); cell&CHAR(10)&1; INDEX(SPLIT(INDEX(A1:P1;col-1);CHAR(10));1;2)+1 ) ) ) ) ))
内容的提问来源于stack exchange,提问作者Tes
相关产品推荐
相关产品推荐

