Excel不同类型单元格值拼接失败,寻求解决方案
问题原因及解决方法
问题根源
Excel里的日期和时间本质是数值:
- 日期是1900年1月1日以来的累计天数(比如44984对应2023年2月27日)
- 时间是一天的小数占比(比如0.33333对应8:00 AM,0.89583对应7:00 PM)
你直接用CONCATENATE引用这些单元格时,会读取它们的原始数值,而非表格中显示的格式化文本,所以出现了错误结果。
解决公式
用TEXT函数将日期、时间单元格转换成指定格式的文本后再拼接,修正后的公式如下:
=Rates!I9&" "&TEXT(Rates!H9,"m/d")&" from "&TEXT(Rates!C9,"h:mm AM/PM")&" to "&TEXT(Rates!D9,"h:mm AM/PM")
(也可以用CONCATENATE,但用&拼接更简洁直观)
格式参数说明
TEXT(Rates!H9,"m/d"):把日期序列号转为「月/日」格式(如2/27)TEXT(Rates!C9,"h:mm AM/PM"):把时间小数转为「时:分 上午/下午」格式(如8:00 AM)
如果需要和表格中显示的格式完全匹配,直接把单元格的自定义格式代码复制到TEXT函数的格式参数里即可。
内容的提问来源于stack exchange,提问作者Wm Morton
相关产品推荐
相关产品推荐

