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

基于日期筛选在Google Sheets中生成动态价格表

Google Sheets 基于日期自动选择EOSS/BAU价格的Query实现

核心公式

假设原始数据存于名为数据的工作表,表头为:A=SKU、B=EOSS开始日期、C=EOSS结束日期、D=EOSS价格、E=BAU价格。在新工作表的A2单元格输入以下公式:

=QUERY(数据!A:E, "SELECT A, IF(DATE '"&TEXT(TODAY(),"yyyy-MM-dd")&"' >= B AND DATE '"&TEXT(TODAY(),"yyyy-MM-dd")&"' <= C, D, E) WHERE A IS NOT NULL LABEL IF(DATE '"&TEXT(TODAY(),"yyyy-MM-dd")&"' >= B AND DATE '"&TEXT(TODAY(),"yyyy-MM-dd")&"' <= C, D, E) '当前适用价格'", 1)

公式拆解

  • 数据源指定:数据!A:E 指向存储产品价格信息的原始数据区域
  • 日期判断逻辑:
    • TEXT(TODAY(),"yyyy-MM-dd") 将当前日期转换为Query函数可识别的字符串格式
    • DATE '"&...&"' >= B AND DATE '"&...&"' <= C 判断当前日期是否落在EOSS促销区间内
  • 价格选择:IF函数根据判断结果返回EOSS价格(D列)或BAU常规价格(E列)
  • 过滤空行:WHERE A IS NOT NULL 剔除无SKU的无效行
  • 表头设置:LABEL ... '当前适用价格' 为生成的价格列设置清晰表头
  • 表头参数:最后一个参数1表示原始数据包含表头,Query会自动识别并生成对应表头

自定义日期查询

如果需要基于指定日期而非当前日期判断,只需将公式中的TODAY()替换为目标日期单元格引用(如$F$1),修改后的公式示例:

=QUERY(数据!A:E, "SELECT A, IF(DATE '"&TEXT($F$1,"yyyy-MM-dd")&"' >= B AND DATE '"&TEXT($F$1,"yyyy-MM-dd")&"' <= C, D, E) WHERE A IS NOT NULL LABEL IF(DATE '"&TEXT($F$1,"yyyy-MM-dd")&"' >= B AND DATE '"&TEXT($F$1,"yyyy-MM-dd")&"' <= C, D, E) '指定日期适用价格'", 1)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 09:10:31