You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Google Sheets中按指定季度与销售列筛选数据?

在Google Sheets中按指定季度和列筛选数据的方法

步骤1:设置参数输入单元格

先在表格空白区域指定两个单元格用来输入筛选条件:

  • 比如用F1单元格输入要筛选的季度(例如2)
  • 用F2单元格输入要筛选的列名(例如"B Sales")

步骤2:使用数组公式生成目标结果

假设你的原始数据在A1:D9(表头+8行数据),在空白单元格(比如G1)输入以下公式,即可生成和示例一致的输出格式:

=LET(
  原始数据,A1:D9,
  目标季度,F1,
  目标列,F2,
  筛选行,FILTER(原始数据,INDEX(原始数据,,2)=目标季度),
  列位置,MATCH(目标列,INDEX(原始数据,1,0),0),
  结果数据,INDEX(筛选行,,列位置),
  HSTACK(
    IF(SEQUENCE(ROWS(结果数据))=1,目标季度,""),
    IF(SEQUENCE(ROWS(结果数据))=1,目标列,""),
    结果数据
  )
)

公式说明

  • LET:定义变量简化公式逻辑,方便后续修改
  • 筛选行:从原始数据中过滤出季度匹配的所有行
  • 列位置:找到目标列在原始数据表头中的位置
  • 结果数据:提取筛选行中目标列的数值
  • HSTACK:横向拼接三部分内容,其中季度和列名仅在第一行显示,后续行留空,完全匹配你想要的输出格式

替代方案:使用QUERY函数

如果你习惯用QUERY函数,也可以用以下公式(同样基于F1和F2作为参数单元格):

=LET(
  目标季度,F1,
  目标列,F2,
  查询语句,"SELECT B, '"&目标列&"', `"&目标列&"` WHERE B = "&目标季度&" LABEL B 'Quarter', '"&目标列&"' 'Column', `"&目标列&"` 'Result'",
  QUERY(A1:D9, 查询语句, 1)
)

注意:这个方案会每行都显示季度值,如果你需要仅第一行显示季度和列名,优先选择第一个LET数组公式。

内容的提问来源于stack exchange,提问作者mark

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 15:25:19