Google Sheets公式优化:排除BF列拼接合并单元格与指定列
解决方案
核心是调整公式中参与拼接的列范围,移除BF列,同时同步更新有效行数的计算范围:
修改思路
- 保留原有的合并单元格填充逻辑(
lookup部分),这部分能自动补全A列合并单元格的空值 - 将原公式中拼接的列范围
D3:G替换为不包含BF列的目标列组合(即Name、Frequency、Old Measure、New Measure对应的列) - 同步调整
query函数中计算最后有效行的范围,确保只处理有内容的行
示例公式(根据BF列位置调整)
假设BF列是G列(需保留D列Frequency、E列Old Measure、F列New Measure):
=ArrayFormula(query(byrow( {lookup(row(A3:A),row(A3:A)/(A3:A<>""),A3:A),D3:F}, lambda(r,textjoin("-",1,r))), "limit "&-1+max(F3:F11<>"",row(F3:F11))))
假设BF列是D列(需保留E列Frequency、F列Old Measure、G列New Measure):
=ArrayFormula(query(byrow( {lookup(row(A3:A),row(A3:A)/(A3:A<>""),A3:A),E3:G}, lambda(r,textjoin("-",1,r))), "limit "&-1+max(G3:G11<>"",row(G3:G11))))
关键说明
- 替换列范围时,确保
{...}内的列顺序是:填充后的Name列 + 你需要的另外三列(Frequency、Old Measure、New Measure) - 公式末尾的
max(...)部分,要使用你最后一列的单元格范围(比如示例中的F3:F11或G3:G11),保证能准确识别到最后一行有内容的行
内容的提问来源于stack exchange,提问作者Shaik Naveed
相关产品推荐
相关产品推荐

