Google Sheet QUERY结合TEXT转换日期为dd mmm yyyy格式咨询
解决方案
方案1:整列自动转换(推荐,适合新增列存储转换后日期)
你可以在目标列的第一行(比如将转换后日期放在L列,直接在L1单元格输入以下公式):=ARRAYFORMULA(IF(ROW(C:C)=1, "Mailchimp可用日期", IF(C:C="",, TEXT(C:C, "[$-en-US]dd mmm yyyy"))))
公式说明:
ARRAYFORMULA让公式作用于整个C列,不需要逐行设置- 第一行判断为表头,自动输出自定义的列名
- 仅当C列对应行有内容时才执行转换,空行不会输出无效内容
[$-en-US]强制使用英文月份缩写,不管表格当前的区域设置,确保输出为20 Dec 2020格式
之后Google Form新增的提交数据会自动同步到原表,转换列也会自动生成对应格式的日期,无需手动操作。
方案2:直接修改QUERY语句输出指定格式
如果你需要用QUERY直接导出符合要求的日期列,可在原QUERY语句中加入FORMAT子句:=QUERY(A1:K, "SELECT C FORMAT C '[$-en-US]dd mmm yyyy'", 1)
该语句会直接返回格式符合要求的整列日期,新增行也会自动包含在QUERY的查询范围内。
异常处理
如果转换时出现#VALUE!错误,说明C列的日期为文本格式无法被系统识别,将公式中C:C替换为DATEVALUE(C:C)即可,比如修改为:=ARRAYFORMULA(IF(ROW(C:C)=1, "Mailchimp可用日期", IF(C:C="",, TEXT(DATEVALUE(C:C), "[$-en-US]dd mmm yyyy"))))
内容的提问来源于stack exchange,提问作者user2807157
相关产品推荐
相关产品推荐

