我想達到 A1 中看到的結果。為什么即使格式相同,第 3 行也不會輸出與第 1 行和第 2 行相同的結果 - yyyy-mm-dd hh:mm:ss?
這與區域設定有關嗎?

1 Range("A1").Value2 = Now
2 Range("A1").NumberFormat = "yyyy-mm-dd hh:mm:ss"
3 Range("B1").Value2 = Format(Now, "yyyy-mm-dd hh:mm:ss")
uj5u.com熱心網友回復:
那是因為:
A1:您設定日期值并應用特定的顯示格式。
B1:您將 Date 值格式化為Text,將其設定為值,但單元格沒有應用特定格式,因此 Excel 將文本日期視為日期值并將其轉換為真正的 Date 值,該值與您的默認(德語?)日期格式。
要強制將文本日期作為文本閱讀,您可以在它前面加上引號:
Range("A1").Value2 = Now
Range("A1").NumberFormat = "yyyy-mm-dd hh:mm:ss"
Range("B1").Value2 = Format(Now, "yyyy-mm-dd hh:mm:ss")
Range("C1").Value2 = Format(Now, "\'yyyy-mm-dd hh:mm:ss")
輸出(丹麥本地化):

請注意,C1 是文本(左對齊)。
uj5u.com熱心網友回復:
為什么不使用范圍設定單元格格式之前或之后?
例子:
Range("A1:Z1").NumberFormat = "yyyy-mm-dd hh:mm:ss"
Range("A1").Value2 = Now
Range("B1").Value2 = Now
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/372716.html
上一篇:Flutter-從字串到美國日期格式的DateFormat
下一篇:JavaGUI在標簽上繪制圖片
