如何在Google Sheets中提取列标识为DATE的对应行数据
解决方案:提取Google Sheets中重复表头下的数据
核心公式(适用于新工作表)
假设原始数据在Sheet1,新建工作表(比如命名为提取结果)后,在A1单元格手动输入表头DATE、TIME、TICKET#,然后在A2单元格粘贴以下数组公式:
=ARRAYFORMULA( LET( 数据源, Sheet1!A:Z, 目标表头, {"DATE", "TIME", "TICKET#"}, // 定位所有包含完整三个表头的行 表头行号, BYROW(数据源, LAMBDA(行数据, IF(AND(COUNTIF(行数据, 目标表头)=3), ROW(行数据), ""))), // 获取对应的数据行(表头行的下一行) 数据行号, FILTER(表头行号, 表头行号<>"")+1, // 提取数据行中匹配表头的列内容 提取结果, INDEX(数据源, 数据行号, MATCH(目标表头, INDEX(数据源, 数据行号-1, ), 0)), // 过滤空行 FILTER(提取结果, INDEX(提取结果, ,1)<>"") ) )
公式说明
- 自动识别所有包含
DATE、TIME、TICKET#三个表头的行,不管这些表头在工作表中重复出现多少次 - 提取每个表头行下一行的对应列数据,无需手动指定列位置
- 自动过滤空行,只保留有效数据
- 支持表头列顺序变化(比如DATE在第3列、TIME在第1列的情况)
调整提示
如果原始数据列数超过Z列,把公式中的Sheet1!A:Z改成更大的范围(比如Sheet1!A:ZZ)即可。
内容的提问来源于stack exchange,提问作者user3453661
相关产品推荐
相关产品推荐

