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

Google Sheets中如何将带单引号的文本格式时间[2021-10-08 23:49:37]转换为UTC-6时区并格式化为[10-十月-2021, 05:49:37 下午]

嘿,刚好之前处理过类似的Google Sheets时间转换需求,给你两套直接能用的方案,根据你的 Sheets 语言环境选就行:

方案一:适用于中文界面的 Sheets

如果你的Google Sheets已经设置为中文语言,用这个简洁的公式就搞定了(假设原始时间在A1单元格):

=TEXT(SUBSTITUTE(A1,"'","") - TIME(6,0,0), "dd-mmmm-yyyy, hh:mm:ss AM/PM")

公式拆解:

  • SUBSTITUTE(A1,"'",""):先去掉单元格里的前置单引号,把带引号的文本转成纯时间字符串
  • - TIME(6,0,0):把原始UTC时间减去6小时,转换为UTC-6时区的时间(如果你的原始时间不是UTC,记得调整这个时间差)
  • TEXT(...):把转换后的时间值格式化成你要的样式——dd是两位数日期,mmmm会自动输出中文全称月份(比如「十月」),hh:mm:ss是12小时制时分秒,AM/PM会自动显示「上午」/「下午」

方案二:通用版(不受语言设置影响)

如果你的 Sheets 不是中文界面,或者担心月份显示异常,用这个带手动指定中文月份的公式:

=LET(
  original_time, SUBSTITUTE(A1,"'",""),
  utc6_time, original_time - TIME(6,0,0),
  day_part, TEXT(utc6_time, "dd"),
  month_part, SWITCH(MONTH(utc6_time),1,"一月",2,"二月",3,"三月",4,"四月",5,"五月",6,"六月",7,"七月",8,"八月",9,"九月",10,"十月",11,"十一月",12,"十二月"),
  year_part, TEXT(utc6_time, "yyyy"),
  time_part, TEXT(utc6_time, "hh:mm:ss AM/PM"),
  day_part & "-" & month_part & "-" & year_part & ", " & time_part
)

额外说明:

  • 不管哪种方案,都能自动处理跨天的情况(比如原始时间是凌晨1点,减6小时后会自动变成前一天的19点)
  • 原始单元格的单引号是Google Sheets的文本前缀标记,SUBSTITUTE函数能完美去除它,不需要手动双击单元格修改

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.30 20:37:33