![Excel:如何将文字点放入单元格格式](https://linux22.com/image/1463230/Excel%EF%BC%9A%E5%A6%82%E4%BD%95%E5%B0%86%E6%96%87%E5%AD%97%E7%82%B9%E6%94%BE%E5%85%A5%E5%8D%95%E5%85%83%E6%A0%BC%E6%A0%BC%E5%BC%8F.png)
每当我将一个点字符放入自定义单元格格式时,Excel 都会将其解释为小数分隔符在格式的那个位置。问题是小数分隔符会随着语言环境而变化。我实际上只想要一个点。
这是一个不起作用的示例格式:
hh:mm:ss.000
(它不起作用,因为如果语言环境使用除点以外的任何其他内容作为小数点分隔符,那么您会22:31:34,854
在格式化的值中看到类似的内容)
我尝试过类似
hh:mm:ss\.000
让 Excel 明白我真正想要的是点。但是 Excel 2010 拒绝接受这种有效格式。(我曾在某处读到这是\
在 Excel 格式字符串中转义字符的方法)
答案1
恐怕您必须使用“文本”单元格格式并使用公式来输出带有所需分隔符的文本值
=LEFT(A1;2) & ":" & MID(A1;4;2) & ":" & MID(A1;7;2) & "." & RIGHT(A1;3)
Excel 不处理命名格式的毫秒......
答案2
Excel 中无法创建时间显示格式,例如
hh:mm:ss.SSS
其中hh
是小时(24 小时制),mm
是分钟,ss
是秒,SSS
是毫秒,并且毫秒前面的分隔符始终为点。只有当您接受毫秒前面的分隔符会随区域设置而变化时,您才能做到这一点。一种解释我们在这里陷入困境的方式是说 Excel 并不真正支持毫秒的概念,它只支持秒的分数概念。两者之间存在细微的差别。
您可以要求 Excel 打印秒的小数部分,方法是在秒元字符(通常为ss
)后加上<decimal-separator-char>000
,例如自定义数字格式,例如
hh:mm:ss.000
(如果您当前的小数分隔符是“。”)
或者
hh:mm:ss,000
(如果您当前的小数分隔符是“,”)
如果您阅读 Microsoft 的官方文档,它实际上并没有说您必须使用当前语言环境使用的小数分隔符,它只是说您应该使用.
。这根本不是事实。
以不变的方式创建所要求的时间格式的唯一方法是在单元格中创建自己的字符串连接和格式化公式。这会很丑陋。