【发布时间】:2014-02-20 12:25:55
【问题描述】:
在我的 Excel 工作簿中,我从另一个(文本)源复制了一些日期信息。 为了能够对这些日期进行计算,我使用了函数“DATEVALUE”。
示例:单元格 A1 包含文本 20 february 2014,单元格 B1 包含公式 =DATEVALUE(A1)。
这按预期工作:我得到了自 1-1-1900 以来的天数,我可以用任何可以想象的日期表示法显示它。
到目前为止没有问题。尽管这不是英语中典型的日期表示法,但 DATEVALUE 将 february 识别为月份名称并采取相应措施。
现在,当我在具有不同国际设置(Windows 7:控制面板 -> 区域和语言 -> 格式)的计算机上打开此工作簿时,单元格 B1 出现 #VALUE 错误。只有当我将 A1 中的文本更改为 20 februari 2014(荷兰日期字符串,根据该 PC 上的国际设置)时,DATEVALUE 才会给出与以前相同的结果。
显然,DATEVALUE 使用国际设置将字符串转换为日期。
有什么办法可以防止这种情况发生吗?
- 为了让Excel明白A1中的字符串是用英文写的, 不管 PC 上的国际设置是什么
- 并将此字符串转换为日期,以便随后用于计算?
【问题讨论】:
-
你可以写一个 UDF 总是返回日期,给定一个英文文本字符串,不管国际设置。
标签: excel date internationalization