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

Google Sheets中UK与US日期时间格式转换异常求助

在Google Sheets中实现UK与US日期时间格式互转的正确方法

问题根源分析

  • 你之前使用的REGEXREPLACE正则表达式匹配的是yyyy-mm-dd格式,但原数据是dd-mm-yyyy,导致正则无法匹配,因此格式没有变化。
  • 复制粘贴时出现数字/自动替换分隔符,是因为部分单元格是日期时间序列化值(Google Sheets用数字存储日期),粘贴时系统自动解析;而部分是纯文本,解析规则不一致导致显示混乱。

分场景解决方案

场景1:原数据是纯文本格式的dd-mm-yyyy hh:mm:ss

使用修正后的正则表达式拆分日期部分,重组为US格式并保留时间:

=ARRAYFORMULA(IF(A2:A="", "", REGEXREPLACE(A2:A, "^(\d{2})-(\d{2})-(\d{4}) (.*)$", "$3-$2-$1 $4")))
  • 正则说明:^(\d{2})-(\d{2})-(\d{4}) (.*)$ 捕获日(dd)、月(mm)、年(yyyy)和时间部分,替换为年-月-日 时间的US格式。

场景2:原数据是Google Sheets识别的日期时间值(显示为dd-mm-yyyy但实际是数字)

直接用TEXT函数指定输出格式,无需正则:

=ARRAYFORMULA(IF(A2:A="", "", TEXT(A2:A, "yyyy-mm-dd hh:mm:ss")))
  • TEXT函数会自动把日期序列化值转换成指定格式的文本,不会出现数字乱码。

场景3:同一列混合纯文本和日期值

用ISDATEVALUE判断数据类型,自动匹配对应处理逻辑:

=ARRAYFORMULA(IF(A2:A="", "", IF(ISDATEVALUE(A2:A), TEXT(A2:A, "yyyy-mm-dd hh:mm:ss"), REGEXREPLACE(A2:A, "^(\d{2})-(\d{2})-(\d{4}) (.*)$", "$3-$2-$1 $4"))))

后续格式优化

如果需要将转换后的文本转为可计算的日期时间值:

  1. 选中转换结果列
  2. 点击顶部菜单「格式」→「数字」→「日期时间」
  3. 在子菜单中选择yyyy-mm-dd hh:mm:ss样式,或自定义格式

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 07:50:30